by 今井 孝
![](https://nordot-res.cloudinary.com/c_limit,w_800,f_auto,q_auto:eco/ch/images/1177734051378398008/origin_1.png)
日頃からPowerPointの“マクロ”を活用している人は少ないですよね。スライドの分割やテキストボックスの連結、フォルダー内の画像を各スライドに挿入など、手動では辛い作業も多いのですが、力技で済ましてしまっているのではないでしょうか。
スライド作成はデザインが注目されがちで、Excelのマクロと比較して積極的に覚えようという気にならないものです。そんな人は、Copilotに助けてもらうのはいかがでしょうか。
「○○するVBAのコードを記述して」と指示すれば、あっという間にコードが生成されます。後は、VBEの画面を呼び出して実行するだけ。今回は、選択中のテキストボックスに含まれる改行をまとめて削除するVBAコードをCopilotに記述してもらいます。
なお、Web版のCopilotでも同じようにVBAコードを書いてもらうことは可能です。
CopilotにVBAコードを生成してもらう
画面右上の[Copilot]ボタンからサイドウィンドウを表示してプロンプトを入力するだけです。ここでは、以下のように入力しました。
複数選択しているテキストボックスに含まれる改行を削除するVBAコードを書いてください
なお、プロンプトを改行する場合は[Shift]+[Enter]キーを押してください。[Enter]キーはプロンプトの送信となります。
![](https://nordot-res.cloudinary.com/c_limit,w_800,f_auto,q_auto:eco/ch/images/1177734048307626151/origin_1.png)
![](https://nordot-res.cloudinary.com/c_limit,w_800,f_auto,q_auto:eco/ch/images/1177734045020061706/origin_1.png)
![](https://nordot-res.cloudinary.com/c_limit,w_800,f_auto,q_auto:eco/ch/images/1177734083528049286/origin_1.png)
![](https://nordot-res.cloudinary.com/c_limit,w_800,f_auto,q_auto:eco/ch/images/1177734086470435437/origin_1.png)
Web版のCopilotでコードを検証可能
生成されたVBAコードは以下の通りです。「Chr(13)」と「Chr(10)」は改行を表しています。大きな問題はなさそうですが、「" "」に置換(Replace)する箇所が気になりますね。
<code> Sub RemoveLineBreaks() <br/> Dim shp As Shape <br/> Dim sText As String <br/> For Each shp In ActiveWindow.Selection.ShapeRange <br/> If shp.Type = msoTextBox Then <br/> sText = shp.TextFrame.TextRange.Text <br/> sText = Replace(sText, Chr(13) & Chr(10), " ") <br/> sText = Replace(sText, Chr(13), " ") <br/> shp.TextFrame.TextRange.Text = sText <br/> End If <br/> Next <br/> End Sub <br/> </code>
このままでは、半角スペースに置換されるはずです。Web版のCopilotに検証してもらいましょう。
![](https://nordot-res.cloudinary.com/c_limit,w_800,f_auto,q_auto:eco/ch/images/1177734094664138848/origin_1.png)
VBEの画面に貼り付けて実行する
問題の箇所を修正して、VBEの画面に貼り付けて実行してみます。[開発]タブが表示されていない場合は[ファイル]-[オプション]の順にクリックして[PowerPointのオプション]を表示、[リボンのユーザー設定]から[開発]にチェックを付けておきましょう。
![](https://nordot-res.cloudinary.com/c_limit,w_800,f_auto,q_auto:eco/ch/images/1177734120083080138/origin_1.png)
![](https://nordot-res.cloudinary.com/c_limit,w_800,f_auto,q_auto:eco/ch/images/1177734125602816455/origin_1.png)
![](https://nordot-res.cloudinary.com/c_limit,w_800,f_auto,q_auto:eco/ch/images/1177734132492107844/origin_1.png)
このままVBEの画面で[マクロの実行]ボタンをクリックすれば処理が実行されます。ここがPowerPointのマクロの便利なところで、“マクロ有効”として保存しなくても、起動中のファイルからマクロを呼び出すことが可能です。
ただし、ファイルを閉じるとコードは消えてしまうことに注意。マクロを残しておきたい場合は、マクロ有効プレゼンテーション(PPTM形式)で保存しておいてください。
![](https://nordot-res.cloudinary.com/c_limit,w_800,f_auto,q_auto:eco/ch/images/1177734154050421298/origin_1.png)
![](https://nordot-res.cloudinary.com/c_limit,w_800,f_auto,q_auto:eco/ch/images/1177734159530606976/origin_1.png)
![](https://nordot-res.cloudinary.com/c_limit,w_800,f_auto,q_auto:eco/ch/images/1177734162927944336/origin_1.png)
![](https://nordot-res.cloudinary.com/c_limit,w_800,f_auto,q_auto:eco/ch/images/1177734187734925509/origin_1.png)