LoginSignup
1
0

More than 1 year has passed since last update.

エクセルマクロからAPI接続でChatGPTを使ってAIチャットボットを作成してみた!

Posted at

はじめに

今、話題のChatGPTをExcelマクロ(VBA)から使えるようにしましたので、ご紹介します。

環境

Windows10
Excel(Microsoft365バージョン)

流れ

・完成イメージ
・APIキーの取得方法
・基本構造作成
・JSON形式のデータ取得
・2回目以降の質問実装
・エンディング

最終画面イメージ

最終的に、以下のようなChatGPTを組み込んだAIチャットボットを作成しました。
完成イメージ.jpg

YouTubeでの解説:

上記の作業の流れをYoutubeで詳しく解説していますので、ぜひ、ご覧ください。

サンプルソース

YouTubeで紹介している処理の初期版プログラムソースです。

Sub ChatGPT_API()
 
    Dim APIKey As String
    Dim strModel As String
    Dim strQuestion As String
    
    Dim Url As String
    Dim http As Object
    Dim strMessages  As String
    Dim strResponse As String
 
    '*** 初期値設定 *****
    APIKey = "APIキーを貼り付けてください"
    strModel = "gpt-3.5-turbo"  'モデル名
    
    strQuestion = Range("B2").text '**質問を変数にセット
        
    '*** API処理 ****
    Url = "https://api.openai.com/v1/chat/completions"
    
    Set http = CreateObject("MSXML2.XMLHTTP")

    'リクエストヘッダー
    http.Open "POST", Url, False
    http.setRequestHeader "Content-Type", "application/json"
    http.setRequestHeader "Authorization", "Bearer " & APIKey
    
    'メッセージ作成
    strMessages = "{""model"": """ & strModel & """," & _
                  """messages"": [{""role"": ""user"", ""content"": """ & strQuestion & """}]}"

    'リクエスト送信
    http.send strMessages
    
    strResponse = http.responseText         '結果を変数に代入
    
    Range("B5") = strResponse
 
End Sub

最終プログラム

YouTubeで紹介している最終プログラムソースは、YouTube動画の概要欄に、限定公開のQIITAのURLを掲載していますので、Youtube動画経由でご覧ください。
https://youtu.be/nsrg40kdFuM

最後に:

今回は、ChatGPTに対してエクセルマクロでAPI接続するプログラムを作成しました。
意外と簡単に出来ましたが、このプログラム作成もChatGPTやBing-AIを使って作成しました。
もう、ChatGPTなしには、プログラムが作成できません!
今後も、良さそうなプログラムが出来たら、ご紹介したいと思います。

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0