Home » ワードマクロ・Word VBAの使い方 » フォント » Word VBAでアニメーションを削除する

Word VBAでアニメーションを削除する

対象:Word2007, Word2010

「ワード マクロ アニメーション文字」
という検索キーワードで、このサイト・インストラクターのネタ帳へのアクセスがありました。

この検索キーワードを見かけるまで、私もすっかり忘れかけていましたが、2003までのWordでは、[フォント]ダイアログ-[アニメーション]タブから、

アニメーションを削除するWordマクロ

文字にアニメーション効果を設定することができました。

しかし、2007以降のWordの[フォント]タブには[フォント]タブ[文字幅と間隔]タブは存在していますが、[アニメーション]タブは存在しておらず、

アニメーションを削除するWordマクロ

一般的な操作では文字にアニメーション効果を設定することはできなくなっています。

2007以降のWordでアニメーションの設定はできないのですが、2003以前のWordでアニメーションを設定したファイルを、Word 2010・2007で開くとアニメーションが動いてしまいます!(Word 2013ではアニメーションは動かなくなっていますが)

「ワード マクロ アニメーション文字」
という検索をした方が、何を求めていたのかはわかりませんが、アニメーションの設定されてしまっているWordファイルから、Word 2010・2007でアニメーションを削除したいというニーズは実務でありそうです。

[スポンサードリンク]

アクティブ文書のアニメーションを削除するサンプルマクロ

アニメーション機能のなくなっているWord 2010・2007でも、マクロを使えばアニメーションを削除することができます。

Sub アニメーションを削除_アクティブ文書()
 ActiveDocument.Range.Font.Animation = wdAnimationNone
End Sub

FontオブジェクトにAnimationというプロパティが存在していて、このAnimationプロパティに定数・wdAnimationNoneを設定すればアニメーションを削除できます。

このマクロでは、
 ActiveDocument.Range...
と、Documet.Rangeメソッドを、引数を指定せずに呼ぶことで、アクティブな文書の本文全体を表すRangeオブジェクトを取得して、Font.Animationプロパティを利用することで、ループ処理なしで一気にアニメーションを削除しています。

選択範囲のアニメーションを削除するサンプルマクロ

以下のマクロを実行すれば、アクティブな文書で選択されている文字列から、アニメーションを削除できます。

Sub アニメーションを削除_選択範囲()
 Selection.Font.Animation = wdAnimationNone
End Sub

先のマクロで「ActiveDocument.Range」となっていた部分が「Selection」になっていることだけが異なっています。

ちなみに、、
 Selection.Font.Animation = wdAnimationNone
この代入文の右辺の定数・wdAnimationNoneを、その他の定数に変更してやれば、選択されている文字列にアニメーションを設定するマクロになります。一応。。

最終更新日時:2020-04-26 09:30

[スポンサードリンク]

Home » ワードマクロ・Word VBAの使い方 » フォント » Word VBAでアニメーションを削除する

Copyright © インストラクターのネタ帳 All Rights Reserved.

.