ChatGPTに質問するとパワポの資料を作成してくれる魔法のプロンプト

ChatGPTを活用して、質問の回答をパワーポイントのプレゼンテーション資料として出力するプロンプトを作成しました!この機能を使用することで、さまざまなトピックに関する質問の回答を得るだけでなく、その回答を効率的にプレゼンテーション資料として整理することが可能です。

このプロンプトはGPT-3.5、GPT-4、Bing AIのどれでも適用可能です。

プロンプトの使用方法

  1. プロンプトの太字部分をChatGPTに答えてほしい質問に書き換えて実行します。
    • 例として、「AWS Certified Cloud Practitioner 認定試験の勉強方法について」以下のように質問しました。
      • AWS Certified Cloud Practitioner 認定試験の勉強方法を時系列に教えてください。7ステップ程度に分割して教えてください。
    • このような具体的な質問から、美味しいドーナツの作り方や世界で最も有名な観光地など、バラエティ豊かな質問にも対応可能です。
    • VBAソースコードが出力されない場合は「VBAソースコードを出力してください。」など、ChatGPTにソースコードを出力させるように追加の質問をしてください。
    • 質問のポイントは「7ステップ」という単語です。この指定により出力されるスライドの数をコントロールできます。
  2. ChatGPTの回答から「Copy code」をクリックし、VBAのソースコードをコピーします。
  3. パワーポイントを起動します。
  4. 「Alt+F11」キーを押下しVBA(Microsoft Visual Basic for Applications)を起動します。
  5. 「挿入(I) → 標準モジュール(M)」をクリックし、Moduleウィンドウを開きます。
  6. ModuleウィンドウにChatGPTの回答をペースト(貼り付け)します。
  7. 「F5」キー(またはボタン)を押下するとパワーポイントのプレゼン資料の骨子が作成されます。

具体的なステップや内容については、関連情報を調査することで詳細な知識を得ることができます。例えば、特定のトピックに関する書籍やウェブサイト、専門家のアドバイスなどを参考にすると、より具体的な情報を得ることができるでしょう。自身の質問を深め理解を深めるために、積極的に調査することをお勧めします。

プロンプト

AWS Certified Cloud Practitioner 認定試験の勉強方法を時系列に教えてください。7ステップ程度に分割して教えてください。
--------
・回答のルール
1.項番4で定義するVBAソースコードにコンテンツを差し込んで、VBAソースコードを出力する。
	1-1.パワーポイントでのプレゼン資料を作成する。
	1-2.プレースホルダーに設定する内容は800トークンを目安にする。
	1-3.VBAソースコードの変更は禁止する。
	1-4.複数の内容をプレースホルダーに設定する場合は「vbCrLf」で連結し複数の情報を要約せずに出力する。
		出力例)"あいうえお" & vbCrLf & "かきくけこ"
2.VBAソースコード内の差し込み箇所は<>で囲まれている。
3.VBAソースコードへの差し込みは以下のルールとする。
	<コンテンツのスライド数>:回答するコンテンツの数を差し込む。
	以下のブロックはコンテンツの数だけブロックを増やす。
		titles(1) = "<1スライド目のコンテンツのタイトル>"
		texts(1) = "<1スライド目のコンテンツの内容>"
		titles(2) = "<2スライド目のコンテンツのタイトル>"
		texts(2) = "<2スライド目のコンテンツの内容>"
		・・・
	<1スライド目のコンテンツのタイトル>:1つめのコンテンツのタイトルを差し込む。
	<1スライド目のコンテンツの内容>:1つめのコンテンツのプレースホルダーに情報を差し込む。
	<nスライド目のコンテンツのタイトル>:n個めのコンテンツのタイトルを差し込む。
	<nスライド目のコンテンツの内容>:n個めのコンテンツのプレースホルダーに情報を差し込む。
	
	presentationTitle = "<本投稿を端的に表すタイトル>"
	<本投稿を端的に表すタイトル>:質問への回答を表すタイトルを差し込む。

	purposeOfThisGuide = "<本書の目的>"
	<本書の目的>:質問を要約し差し込む。

	conclusionOfThisGuide = "<本書の結論>"
	<本書の結論>:回答を要約し差し込む。
4.VBAソースコード
Sub CreatePresentation()
	Dim ppt As PowerPoint.Application
	Dim presentation As PowerPoint.Presentation
	Dim slide As PowerPoint.slide

	' 本投稿を端的に表すタイトル
	Dim presentationTitle As String
	presentationTitle = "<本投稿を端的に表すタイトル>"

	' 本書の目的
	Dim purposeOfThisGuide As String
	purposeOfThisGuide = "<本書の目的>"

	' 本書の結論
	Dim conclusionOfThisGuide As String
	conclusionOfThisGuide = "<本書の結論>"

	' コンテンツの数
	Const contentsNumber = <コンテンツのスライド数>

	' コンテンツ配列
	Dim titles(1 To contentsNumber) As String
	Dim texts(1 To contentsNumber) As String

	' コンテンツのスライドを設定(スライド数分設定する。以下はコンテンツスライドが2個)
	titles(1) = "<1スライド目のコンテンツのタイトル>"
	texts(1) = "<1スライド目のコンテンツの内容>"
	titles(2) = "<2スライド目のコンテンツのタイトル>"
	texts(2) = "<2スライド目のコンテンツの内容>"

	' PowerPointアプリケーションを取得
	Set ppt = New PowerPoint.Application
	ppt.Visible = True ' パワーポイントを表示

	' 新しいプレゼンテーションを作成
	Set presentation = ppt.Presentations.Add

	' 表紙を追加
	Set slide = presentation.Slides.Add(1, ppLayoutTitle)
	slide.Shapes.Title.TextFrame.TextRange.Text = presentationTitle

	' 目次を追加
	Set slide = presentation.Slides.Add(2, ppLayoutText)
	slide.Shapes.Title.TextFrame.TextRange.Text = "目次"

	slide.Shapes.Placeholders(2).TextFrame.TextRange.Text = CreateTableOfContents(titles, contentsNumber)

	' 本書の目的を追加
	Set slide = presentation.Slides.Add(3, ppLayoutText)
	slide.Shapes.Title.TextFrame.TextRange.Text = "本書の目的"
	slide.Shapes.Placeholders(2).TextFrame.TextRange.Text = purposeOfThisGuide

	' 本文を追加
	For i = 1 To contentsNumber
		' 本文のスライドを追加
		Set slide = presentation.Slides.Add(i + 3, ppLayoutText)
		slide.Shapes.Title.TextFrame.TextRange.Text = titles(i)
		slide.Shapes.Placeholders(2).TextFrame.TextRange.Text = texts(i)
	Next i

	' 本書の結論を追加
	Set slide = presentation.Slides.Add(4 + contentsNumber, ppLayoutText)
	slide.Shapes.Title.TextFrame.TextRange.Text = "本書の結論"
	slide.Shapes.Placeholders(2).TextFrame.TextRange.Text = conclusionOfThisGuide
End Sub

Function CreateTableOfContents(titles() As String, contentsNumber As Integer) As String
	Dim textBoxText As String

	' 本書の目的を追加
	textBoxText = "本書の目的"

	For i = 1 To contentsNumber
		textBoxText = textBoxText & vbCrLf & titles(i)
	Next i

	' 本書の結論を追加
	textBoxText = textBoxText & vbCrLf & "本書の結論"

	CreateTableOfContents = textBoxText 
End Function

パワーポイントサンプル

GPT-3.5とBing AIで作成したパワーポイントを添付しますので、出来栄えを比較してみてください。

GPT-3.5は目次を改変してしまいましたが、Bing AIは指定したプロンプト通りに出力されています。

GPT-3.5

Bing AI

Follow me!

photo by:Artem Maltsev