PowerPointでのプレゼンテーション作成がもっと楽になるマクロ(自動化プログラム)を作りたいと思ったことはありませんか?でも、「VBAって難しそう」「プログラミングなんてできない」と感じている方も多いはず。そんなあなたに、まずは「For Each」ループを使った簡単なマクロの作り方をご紹介します。
For Eachループって何?
「For Each」は、VBAでよく使われる繰り返し処理の一つです。例えば、スライドの中にあるすべての図形(テキストボックスや画像など)に同じ操作をしたいときに便利です。
こんなときに使います
- スライド内のすべての図形のフォントを変更したい
- 特定の条件に合う図形を探して操作したい
- 複数のスライドにわたって同じ処理を繰り返したい
実際にやってみよう!スライド内のフォントを変更するマクロ
まずは、PowerPointを開いて、以下の手順でマクロを作成してみましょう。
- PowerPointを開き、Alt + F11キーを押してVBAエディタを開きます。
- 「挿入」→「標準モジュール」を選択して、新しいモジュールを作成します。
- 以下のコードをコピーして、モジュールに貼り付けます。
vba
Sub ChangeFontForAllShapes()
Dim sld As slide
Dim shp As shape
For Each sld In ActivePresentation.Slides
For Each shp In sld.Shapes
If shp.HasTextFrame Then
If shp.TextFrame.HasText Then
shp.TextFrame.TextRange.Font.Name = "Meiryo UI"
shp.TextFrame.TextRange.Font.Size = 18
End If
End If
Next shp
Next sld
End Sub
- F5キーを押してマクロを実行します。
- すべてのスライドの図形内のテキストのフォントが「Meiryo UI」に、サイズが18に変更されます。



コメント