SHIMIZU_NORIAKI

基本的にメモ代わり

ChatGPTのAPIをExcel関数で使用できる方

ChatGPTのAPIExcel関数として使用する方法があります。以下に一般的な手順を示します。

ChatGPTのAPIキーの取得: OpenAIのウェブサイトからChatGPTのAPIキーを入手します。

Excelのマクロの作成: ChatGPTへのリクエストを行うためのマクロをExcelに作成します。以下は、VBAVisual Basic for Applications)を使用した例です。

vba
Copy code
Function CallChatGPT(inputText As String) As String
Dim request As Object
Set request = CreateObject("MSXML2.XMLHTTP")

Dim apiKey As String
apiKey = "YOUR_API_KEY"

Dim prompt As String
prompt = "{""prompt"": """ & inputText & """, ""max_tokens"": 50}"

Dim url As String
url = "https://api.openai.com/v1/engines/davinci-codex/completions"

request.Open "POST", url, False
request.setRequestHeader "Content-Type", "application/json"
request.setRequestHeader "Authorization", "Bearer " & apiKey
request.send prompt

Dim responseText As String
responseText = request.responseText

Dim startIdx As Integer
Dim endIdx As Integer
startIdx = InStr(responseText, "choices"": [{""text"": """) + Len("choices"": [{""text"": """)
endIdx = InStr(startIdx, responseText, """}")

CallChatGPT = Mid(responseText, startIdx, endIdx - startIdx)
End Function

上記の例では、"YOUR_API_KEY"の部分を実際のAPIキーに置き換えます。また、この例ではGPT-3.5のエンジンである"davinci-codex"を使用していますが、使用するエンジンに応じてURLを調整する必要があります。

セルに関数を使用: Excelのセルに以下のように関数を入力します。
scss
Copy code
=CallChatGPT("Your input text")
"Your input text"の部分を入力したいテキストに置き換えます。

これで、関数が呼び出され、ChatGPTからの応答が返されるはずです。

ただし、この例では単純なテキストの生成に関する問い合わせのみをサポートしています。より複雑なリクエストや応答の処理については、上記の例を拡張する必要があります。