PowerPointのVBAの使い方をお探しですね。

広告

【初心者入門】PowerPoint VBAの始め方|単純作業を自動化する

プレゼン資料を作るとき、毎回同じようなスライドをコピーしたり、大量のテキストを一つずつ貼り付けたり…そんな地味な作業に時間を取られていませんか?実は、PowerPoint VBA(Visual Basic for Applications)を使えば、こういった面倒な作業を一瞬で終わらせることができるんです。

「ExcelのマクロならVBAって聞いたことある!」という方も多いと思いますが、PowerPointでも同じように自動化できます。

この記事では、プログラミングなんてやったことない…という初心者の方でも、迷わずPowerPoint VBAを始められるように、基礎から実際にコードを動かすところまで、順を追って説明していきますね。

PowerPoint VBAって何?使うとどんないいことがあるの?

PowerPoint VBAというのは、Microsoft Officeに最初から入っているプログラミング言語を使って、PowerPointの操作を自動でやってくれる機能のことです。

「マクロ」って言葉を聞いたことがあるかもしれませんが、厳密には「マクロ」は自動化された機能そのもので、「VBA」はそのマクロを作るためのプログラミング言語を指します。

Excel VBAが「セル」や「行・列」を操作するのに対して、PowerPoint VBAは「スライド」「図形」「テキストボックス」といったものを操作します。

なので、Excelで VBAを使ったことがある人でも、PowerPoint特有の「どこに何があるか」の構造を理解する必要がありますが、基本的な書き方は同じなので、意外とすんなり覚えられますよ。

PowerPoint VBAを使う最大のメリットは、なんといっても「作業時間がめちゃくちゃ短くなる」ことと「ミスが減る」ことです。

例えば、毎月の会議資料で数字だけを入れ替える作業とか、全部のスライドのフォントサイズを揃える作業とか、手でやるとすごく時間がかかるし、間違えやすいですよね。

VBAを使えば、ボタン一つで何百枚のスライドでも同じ処理を正確にできるので、単純作業から解放されて、もっと大事な内容の構成やデザインを考える時間に使えるようになります。

定型的なレポート作りや、大量の画像を貼り付ける作業なんかでは、特に威力を発揮しますよ。

準備をしよう|「開発」タブを表示させてVBEを開く

PowerPointでVBAを使うには、まず隠れている「開発」タブを表に出すところから始めます。

普通の状態だと、PowerPointの画面上部のメニュー(リボンって呼ばれてます)に「開発」っていう項目は表示されていません。

これは間違って触っちゃわないようにするためなんですが、簡単に表示できるので安心してください。

まず「ファイル」タブをクリックして、左側のメニューの一番下にある「オプション」を選びます。

開いた画面で「リボンのユーザー設定」を選んで、右側のリストにある「開発」にチェックを入れて「OK」を押すだけ。

これでリボンに「開発」タブが現れて、VBAを使う準備が整います。

「開発」タブが出てきたら、次はプログラムを書くための編集画面「VBE(Visual Basic Editor)」を起動します。

「開発」タブの左端にある「Visual Basic」というボタンをクリックするか、キーボードの「Alt」を押しながら「F11」を押すと開けます。

VBEが別の画面で開くと、普段のPowerPointとは全然違う画面が出てきます。

最初はちょっとビックリするかもしれませんが、ここが「マクロの司令室」だと思ってください。

次に、プログラムを書くためのノートみたいなもの「標準モジュール」を追加します。

VBEのメニューバーにある「挿入」から「標準モジュール」を選ぶと、白い記入スペースが出てきます。

ここにコードを書いていくのが基本的な流れです。

PowerPoint VBAの基本的な考え方|どこに何があるかを理解しよう

PowerPoint VBAを使いこなすために一番大事なのは、「どこに何があるか」という構造をイメージできるようになることです。

Excelなら「ファイル→シート→セル」という順番でデータを指定しますが、PowerPointの場合は「ファイル→スライド→図形(テキストボックスとか)」という構造になっています。

例えば、特定のスライドにあるテキストボックスの文字を変えたいときは、「どのファイルの、何枚目のスライドにある、どの図形なのか」をプログラムにちゃんと伝えてあげる必要があります。

この「住所を教えてあげる」感覚がつかめると、グッと理解が進みますよ。

実際のコードでは、`ActivePresentation.Slides(1).Shapes(1)` みたいに書きます。

これは「今開いているファイルの、1枚目のスライドにある、1つ目の図形」という意味です。

PowerPointでは、文字が入っている箱も、ただの四角も、写真も、全部「Shapes(図形)」として扱われます。

その図形の中に文字が入っている場合は、さらに `TextFrame`(文字の枠)とか `TextRange`(文字の範囲)っていうものを操作して、テキストを書き換えます。

Excelの「A1セル」みたいな分かりやすい座標がない分、最初は「どうやって指定するの?」って戸惑うかもしれませんが、「スライドっていう画用紙の上に、図形っていう部品が乗ってる」ってイメージすると、コードの意味が分かりやすくなりますよ。

やってみよう:最初の自動化マクロを作ってみる

それでは、実際に簡単なマクロを作って動かしてみましょう。

ここでは例として、「1枚目のスライドのタイトルの文字を変えて、フォントサイズを大きくする」っていうシンプルなプログラムを作ります。

さっき追加した「標準モジュール」の白い画面に、下のコードを書いてみてください。

プログラミングって、最初の数行は「おまじない」みたいに感じるかもしれませんが、`Sub` で始まって `End Sub` で終わるのが一つの処理のかたまりだと覚えておけば大丈夫です。

“`vba
Sub ChangeTitle()
‘ 1枚目のスライドの1つ目の図形(タイトル)を操作
With ActivePresentation.Slides(1).Shapes(1).TextFrame.TextRange
.Text = “PowerPoint VBAによる自動化” ‘ テキストを変更
.Font.Size = 54 ‘ フォントサイズを変更
.Font.Color.RGB = RGB(255, 0, 0) ‘ 文字色を赤に変更
End With
MsgBox “処理が完了しました”
End Sub
“`

コードを書き終わったら、実行してみましょう。

VBEの画面上部にある再生ボタン(右向きの三角マーク)をクリックするか、キーボードの「F5」を押します。

すると、PowerPointの画面で1枚目のスライドのタイトルが書き換わって、文字が大きく赤くなって、最後に「処理が完了しました」っていうメッセージが出るはずです。

もしエラーが出たら、スライドにちゃんとタイトルボックスがあるか確認してみてください。

こんな風に、たった数行のコードでスライドの要素を自由に操れるんです。

この基本を応用して、「全部のスライドに対して同じ処理を繰り返す」っていう技を組み合わせれば、100枚のスライドのフォントを一気に変えるような強力な自動化ツールも作れるようになります。

まずは小さな操作から自動化を試して、少しずつ複雑な処理にチャレンジしていってくださいね。

広告