VBAを使用してスライドを作成してPowerPointプレゼンテーションに追加するにはどうすればよいですか?

数日前、ある読者から、PowerPointプレゼンテーションの作成を最初から自動化し、既存のプレゼンテーションにスライドをすばやく追加する方法があるかどうか尋ねられました。私は、そのスクリプトが最も有用なPowerPointマクロのリストに非常に含まれている可能性があります。 

過去に示したように、PowerPointにはマクロレコーダーが含まれていません(どちらもマクロ用のレコーダーが組み込まれているExcelやWordとは異なります)。したがって、PowerPointを自動化するための単純なマクロを作成するために使用できる古き良きVisual Basic forApplicationが残っています。PowerPoint Automationにはさらに別の方法がありますが、それらはこのチュートリアルの範囲を超えています。

今日の短いチュートリアルでは、3つの異なるユースケースについて説明します。

  1. 新しいプレゼンテーションの作成(空白またはテンプレートを使用)
  2. 既存のプレゼンテーションにスライドを追加します。
  3. 上記の2つのケースの組み合わせ(最初から作成とスライドの追加)

始めましょう。

リボンを見てください。メニューに[開発者]エントリが表示されない場合は、コーディングを開始する前に、[開発者]タブを有効にする必要があります。

開発者メニューをリボンに表示した後、先に進んで開発者を押し、次にVisual Basicボタンを押して(または単に先に進んでAlt + F11を押して)、Visual BasicIDEを開きます。

PowerPointプレゼンテーションを作成するためのVBA

  1. VBエディターで、VBAProjectを右クリックし、[挿入]をクリックします。
  2. モジュールを選択します。
  3. 新しく作成したモジュールに次のコードを貼り付けます。
Sub CreatePresentation()
Dim NewPres as Presentation
Set NewPres = Presentations.Add
NewPres.SaveAs("MyPresentation.pptx")
End Sub
  1. [ファイル]、[保存]の順にクリックします。
  2. コードを実行するには、[実行]をクリックしてから、[サブ/ユーザーフォームの実行](または単にF5)を選択します。
  3. VBエディターを閉じます。

スライドを挿入するVBA

  1. VBエディターで、VBAProjectを右クリックし、[挿入]をクリックします。
  2. モジュールを選択
  3. 新しく作成したモジュールに次のコードを貼り付けます。
Sub CreateSlide()
Dim NewSlide as Slide
'This statement ads a title slide
Set NewSlide = ActivePresentation.Slides.Add(Index:=1, Layout:=ppLayoutTitle)
'This statement adds a blank slide in the second place
Set NewSlide = ActivePresentation.Slides.Add(Index:=2, Layout:=ppLayoutBlank)
End Sub
  1. [ファイル]、[保存]の順にクリックします。
  2. コードを実行するには、[実行]をクリックしてから、[サブ/ユーザーフォームの実行](または単にF5)を選択します。
  3. VBエディターを閉じます。

新しいプレゼンテーションを設定してスライドを追加するマクロ

これは、上記で概説した2つのスニペットを混同しているだけです。

Sub CreatePres_AddSlides()
Dim NewPres as Presentation
Dim NewSlide as Slide
Set NewPres = Presentations.Add
NewPres.SaveAs("MyPresentation.pptx")
' Title Slide
Set NewSlide = ActivePresentation.Slides.Add(Index:=1, Layout:=ppLayoutTitle)
'This statement adds a blank slide in the second place
Set NewSlide = ActivePresentation.Slides.Add(Index:=2, Layout:=ppLayoutBlank)
'Save the new PowerPoint file
NewPres.SaveAs("MyPresentation.pptx")
End Sub

次に、VBAを使用してPowerPointで図形をプログラムで作成するためのチュートリアルを調べることができます。

ExcelからPowerPointプレゼンテーションを生成する

最後のケースは、Excelスプレッドシートから直接PowerPointプレゼンテーションを作成したい場合です。Wordや他のMicrosoft365アプリケーションから同じ手法を使用できます。

  • スプレッドシートをPowerPointデータモデルにリンクする([ツール] >> [参照]から)
  • Excelスプレッドシートにボタンを挿入します([開発者] >> [挿入]をクリックしてからコマンドボタンを選択します)。
  • 以下のVBAコードをスプレッドシートVBAプロジェクトに挿入します(シートに直接、またはVBAモジュールに)
  • 必要に応じてスクリプトを変更します。
  • 実行(F5を押す)して結果をテストします。
Sub CreatePresentationFromExcel()


Dim MyPPt As PowerPoint.Application
Dim NewPres As PowerPoint.Presentation
Dim NewSlide As Slide
Set MyPPt = CreateObject("PowerPoint.Application")

Set NewPres = MyPPt.Presentations.Add
Set NewSlide = MyPPt.ActivePresentation.Slides.Add(Index:=1, Layout:=ppLayoutTitle)

NewPres.SaveAs ("MyPresentation.pptx")
NewPres.Close

MyPPt.Quit

MsgBox ("Presentation saved")
End Sub

お楽しみください🙂

Excel VBA PowerPoint の長所

  • Powerpoint で VBA を使用すると、ppt ファイルに巨大なコンテンツを含むスライドが多数含まれている場合に簡単に処理できます。
  • Powerpoint を使用した VBA は、使用できる機能が限られている場合でも、自動化を実現します。

Excel VBA PowerPointの短所

  • [ツール] メニュー オプションにある [参照] オプションから Microsoft PowerPoint 15.0 オブジェクト ライブラリ を選択する必要があります。これは、開始時に必要です。例-1、PowerPoint のコードを実行するたび。

覚えておくべきこと

  • コードを記述した後、ファイルを Macro-Enable Presentation 形式で保存します。これは、コードを紛失したり、将来同じコードを何度も使用したりすることを避けるのに役立ちます。
  • Excel から PowerPoint にジャンプしてページ間のインターフェイスを変更する必要があるため、ここでは再コーディング機能は機能しません。
  • 実行する前に必ずコードをコンパイルしてください。これは、コード内のエラーを見つけるのに役立ちます。これは、大きな行のコードを記述するときに非常に役立ちます。
  • コードを実行して実装するには、PowerPoint スライドに貼り付けるグラフが含まれる Excel シートを開く必要があります。
  • 必要に応じて PowerPoint でグラフを配置できます。

[解決済み]錆がクラッシュし続ける問題を修正する方法は?

[解決済み]錆がクラッシュし続ける問題を修正する方法は?

Rustに直面すると、起動時または読み込み中にクラッシュし続けます。その後、指定された修正に従って、Rushクラッシュの問題を簡単に停止します…

Intel Wireless AC 9560 が動作しない場合の 9 つの修正 (コード 10)

Intel Wireless AC 9560 が動作しない場合の 9 つの修正 (コード 10)

Intel Wireless AC 9560 コード 10 の修正方法について詳しく解説します。Wi-Fi および Bluetooth デバイスでのエラーを解決するためのステップバイステップガイドです。

「不明なソフトウェア例外(0xe0434352)」を修正するにはどうすればよいですか?

「不明なソフトウェア例外(0xe0434352)」を修正するにはどうすればよいですか?

Windows 10および11での不明なソフトウェア例外(0xe0434352)エラーを修正するための可能な解決策を見つけてください。

[フルガイド]Steamのファイル権限の欠落エラーを修正する方法は?

[フルガイド]Steamのファイル権限の欠落エラーを修正する方法は?

Steamのファイル権限がないエラーにお困りですか?これらの8つの簡単な方法で、Steamエラーを修正し、PCでゲームを楽しんでください。

Windows 10でアプリとプログラムが自動的に最小化される問題を修正する7つの方法

Windows 10でアプリとプログラムが自動的に最小化される問題を修正する7つの方法

PC での作業中に Windows 10 が自動的に最小化される問題の解決策を探しているなら、この記事ではその方法を詳しく説明します。

学生が学校でブロックされることを気にせずに最もよくプレイするゲーム トップ 10

学生が学校でブロックされることを気にせずに最もよくプレイするゲーム トップ 10

ブロックされることを心配せずに学生が学校で最もよくプレイするゲーム トップ 10。オンラインゲームの利点とおすすめを詳しく解説します。

ワードウォール

ワードウォール

Wordwallは、教師が教室のアクティビティを簡単に作成できるプラットフォームです。インタラクティブな体験で学習をサポートします。

[解決済み]Ntoskrnl.Exe高CPU使用率Windows10

[解決済み]Ntoskrnl.Exe高CPU使用率Windows10

この記事では、ntoskrnl.exeの高いCPU使用率を解決するための簡単な方法を紹介します。

VACを修正すると、8つの簡単な方法でゲームセッションエラーを確認できませんでした

VACを修正すると、8つの簡単な方法でゲームセッションエラーを確認できませんでした

VACを修正するための解決策を探していると、CSでのゲームセッションエラーを確認できませんでした:GO?次に、与えられた修正に従います

INTERNAL_POWER_ERROR(0x000000A0)を修正する方法

INTERNAL_POWER_ERROR(0x000000A0)を修正する方法

簡単に取り除くために、ソリューションを1つずつ実行し、Windows 10、8.1、8、および7のINTERNAL_POWER_ERRORブルースクリーンエラー(0x000000A0)を修正します。