1. 首页 >> ChatGPT知识 >>

用chatgpt操作excel,快速生成符合条件的挑选结果

现今社会,Excel已成为企业和个人数据处理中最具代表性的电子表格利用程序之一。Excel的挑选功能可以帮助用户更快速、准确地过滤出符合特定条件的数据。但当面对大量复杂数据时,手动挑选将变得非常繁琐、费时和难实现目标。因此,通过ChatGPT模型在Excel中操作数据的方法不但可以解决手动挑选的繁琐问题,而且可以高效、准确地生成符合特定条件的挑选结果。

ChatGPT是OpenAI公司研发的通用人工智能算法,是当前自然语言处理领域最优秀的预训练模型,可以生成高质量的AI文本。将ChatGPT利用到Excel中,可以将Excel的数据输入到ChatGPT模型中,利用ChatGPT的文本生成能力对数据进行挑选和分类,快速生成符合条件的挑选结果。

下面,我们结合实际案例介绍怎么用ChatGPT操作Excel并快速生成符合条件的挑选结果。

我们需要打开Excel表格并打开VBA编辑器。接下来,我们需要在VBA编辑器中导入OpenAI的GPT⑶ API,确保我们可以访问ChatGPT功能。

我们可使用以下代码:

```sub GPT_Excel()

Dim strQuery As Variant

Dim oHTTP As Object: Set oHTTP = CreateObject("MSXML2.XMLHTTP")

Dim responseText As Variant

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

Dim prompt As Variant

Dim headers As Variant

prompt = Array("使用ChatGPT计算Excel挑选结果。调用格式:CALCULATE(filter_range, filter_word) 。")

headers = Array("Content-Type: application/json", "Authorization: Bearer your_access_token")

strQuery = " { ""prompt"":""" + Join(prompt, vbNewLine) + ",""max_tokens"":120,""temperature"":0.75,""n"":1,""stop"":""\n""}"

prompt(0) = "CALCULATE(A1:A10, """")"

strQuery = " { ""prompt"":""" + Join(prompt, vbNewLine) + ",""max_tokens"":120,""temperature"":0.75,""n"":1,""stop"":""\n""}"

On Error GoTo HandleError

oHTTP.Open "POST", endpoint, False

For Each h In headers

hparts = Split(h, ":")

oHTTP.setRequestHeader hparts(0), hparts(1)

Next h

oHTTP.send (strQuery)

responseText = oHTTP.responseText

Debug.Print strQuery

Debug.Print responseText

Exit Sub

HandleError:

Debug.Print oHTTP.status & ": " & oHTTP.statusText

Debug.Print oHTTP.responseText

End Sub

```

此代码将使用OpenAI的Davinci-Codex深度学习模型来完成文本生成的任务。我们将使用“predict”端点来生成挑选结果。在定义“prompt”和“strQuery”时,我们将设置两个字符串:一个是我们的挑选条件,另外一个是我们的聊天机器人会生成的文本。

一旦我们在Excel表中定义了所需的列和行,并肯定了需要进行数据挑选的数据区域,我们就能够调用Excel中的VBA函数来履行我们所需的操作。在这个例子中,我们创建了CALCULATE()函数来履行过滤功能。

```Public Function CALCULATE(ByVal r As Range, ByVal filter As String) As Variant

Dim strQuery As Variant

Dim oHTTP As Object: Set oHTTP = CreateObject("MSXML2.XMLHTTP")

Dim responseText As Variant

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

Dim prompt As Variant

Dim headers As Variant

prompt = Array("打开Excel表格并使用ChatGPT计算Excel挑选结果。")

prompt = Join(prompt, vbNewLine)

prompt = prompt & vbNewLine & "Set ws = ThisWorkbook.ActiveSheet" & vbNewLine & "Set data = ws.Range(r.Address)"

prompt = prompt & vbNewLine & "Dim matches As Variant: matches = data.Find(What:=filter)"

prompt = prompt & vbNewLine & "Dim result As String: result = matches.Address"

prompt = prompt & vbNewLine & "For Each m In matches: result = result & m.Value & vbNewLine: Next m"

prompt = prompt & vbNewLine & "CALCULATE = result"

headers = Array("Content-Type: application/json", "Authorization: Bearer your_access_token")

strQuery = " { ""prompt"":""" + prompt + ",""max_tokens"":120,""temperature"":0.75,""n"":1,""stop"":""\n""}"

On Error GoTo HandleError

oHTTP.Open "POST", endpoint, False

For Each h In headers

hparts = Split(h, ":")

oHTTP.setRequestHeader hparts(0), hparts(1)

Next h

oHTTP.send (strQuery)

responseText = oHTTP.responseText

CHECK = WorksheetFunction.IsText(responseText)

If CHECK = False Then

CALCULATE = responseText

Else

CALCULATE = CVErr(xlErrValue)

End If

Exit Function

HandleError:

Dim errorMessage As String

errorMessage = oHTTP.status & ": " & oHTTP.statusText

CALCULATE = CVErr(xlErrValue)

MsgBox errorMessage

End Function

```

这个代码中,我们使用“Range.Find()”方法,来在数据表中查找特定条件的值。在使用ChatGPT计算结果后,我们使用“For Each”循环,找到所有符合条件的行并取得每一个单元格的值。我们将通过CALCULATE()函数返回所有结果。

在这个例子中,我们显现了打开Excel表格后使用ChatGPT计算结果的方式。为了方便操作,我们还可以将代码存储在宏中,并将宏绑定到快捷键或工具栏按钮上。这样我们就能够在Excel中更加快速、准确地生成符合条件的挑选结果了。

利用ChatGPT在Excel中操作数据具有诸多优势,可使我们更加高效、准确地生成符合条件的挑选结果。我们相信,ChatGPT在Excel中的利用将会极大地提高我们的生产力。

本文来源于chatgptplus账号购买平台,转载请注明出处:https://chatgpt.guigege.cn/chatgpt/28954.html 咨询请加VX:muhuanidc

联系我们

在线咨询:点击这里给我发消息

微信号:muhuanidc

工作日:9:30-22:30

X

截屏,微信识别二维码

微信号:muhuanidc

(点击微信号复制,添加好友)

打开微信

微信号已复制,请打开微信添加咨询详情!