Excel VBAで会話するChatGPT

第3回

作成したChatGPT関数をExcelのシート上で実行しよう

 この記事はインプレス刊『生成AIをWord&Excel&PowerPoint&Outlookで自在に操る超実用VBAプログラミング術』(近田伸矢 著/古川渉一 監修)の一部を編集・転載しています(編集部)

『生成AIをWord&Excel&PowerPoint&Outlookで自在に操る超実用VBAプログラミング術』

 ChatGPTやDALL-Eなどの生成AIを身近に感じる機会がグッと増えていると感じる方は多いのではないでしょうか? 中でもマイクロソフト社の「Copilot Pro」や「Copilot for Microsoft 365」など、生成AIをWordやExcel、PowerPoint、Outlookなどで活用できるサービスが大きな注目を集めているようです。

 Officeアプリ上で生成AIを活用する方法は、こうしたサービスだけではありません。それが各生成AIをVBAプログラミングでコントロールする方法です。書籍『生成AIをWord&Excel&PowerPoint&Outlookで自在に操る超実用VBAプログラミング術』では、そんなプログラミング術を余すことなく解説しています。ここではその可能性を感じてもらうべく、ExcelとChatGPTを連携するプログラミング方法を紹介しましょう。

サンプルファイル(ZIP形式:47KB)


※右クリックメニューからダウンロードしてください

ChatGPT 関数の呼び出し

 これでワークシートのデザインとChatGPT関数の作成が完了しました。最後にワークシート上でChatGPTを呼び出すコードの記述に進みましょう。作成した関数を使うことで、わずか1行のコードでChatGPTを操作できるようになりました。[会話する]ボタンにCallGPTをマクロ登録して実行しましょう。

サンプル03-13.txt
マクロを登録するボタンを右クリック(①)し、[マクロの登録]をクリック(②)する
[マクロの登録]ダイアログボックスが表示される。ここでは[CallGPT]を選択(③)し、[OK]をクリック(➃)する
セルC6に質問を入力(⑤)し、[会話する]をクリック(➅)する。セルC7に[ChatGPTにリクエスト中]と表示された後に、回答が表示(⑦)される
セルC4にTemperatureの数値を入力(⑧)して回答を生成することもできる
同様にセルC5に役割を入力(⑨)して回答を生成することもできる

ChatGPT のモデル設定を最適化しよう

 ChatGPT関数を呼び出す際、特定のモデル(たとえば、コストパフォーマンスに優れた gpt-3.5-turbo-1106)を一括で指定するには、SetGPTmodelプロシージャを実行します。一度設定すれば、それ以降の各リクエストでモデル名を個別に指定する手間を省くことができます。

SetGPTmodelプロシージャを実行すると、インプットボックスで使用するモデルを設定できる

 ただし、次のような場合、Public変数がクリアーされ、その際はChatGPT関数内の処理により、「gpt-4-1106-preview」がセットされるため、注意してください。

  • アプリケーションを閉じたとき
     ExcelやWordなどのアプリケーションを閉じると、Public変数の値は消去されます。
  • VBAプロジェクトをリセットしたとき
     エラーで停止したり、VBAエディターでリセットボタンを押したとき、Public変数はリセットされます。
  • コードがコンパイルされたとき
     コードをコンパイルすると、Public変数もリセットされることがあります。
生成AIをWord&Excel&PowerPoint&Outlookで自在に操る超実用VBAプログラミング術

    書籍目次
  • 【価格】2,530円(本体2,300円+税)
  • 【発売日】2024年2月7日(水)
  • 【ページ数】336ページ
  • 【著者】近田伸矢/監修】古川渉一
  • 【サイズ】A5判
  • 【目次】
     第1章:生成AIを操るVBAの基礎知識
     第2章:知っておきたい生成AIの基本
     第3章:VBAで会話する(ChatGPT)
     第4章:VBAで画像を生成する(DALL-E)
     第5章:VBAで自然言語処理を行う(Embeddings)
     第6章:生成AIのAPIをユーザー定義関数として使用する
     第7章:すぐ使える! PowerPointマクロと生成AIの連携レシピ
     第8章:すぐ使える! Wordマクロと生成AIの連携レシピ
     第9章:すぐ使える! Outlookマクロと生成AIの連携レシピ
     第10章:すぐ使える! Excelマクロと生成AIの連携レシピ