大家好,我是可夫小子,关注AIGC、读书和自媒体。解锁更多ChatGPT、AI绘画玩法。加:keeepdance,备注:chatgpt,拉你进群。
Office 的办公软件Word,是我们日常的文字工作的阵地。与ChatGPT的文字生成功能有天然的互补性。微软的Office365 Copilot已经集成了这个功能,但需要收费。我们可以使用现有的Word + ChatGPT,手动来回Copy,但显然也不够丝滑。如果能在现有的Word中嵌入ChatGPT就是最好的解决方案。
网上有许多相关教程,在原有的Word软件中接入ChatGPT,但由于环境变化,或者语焉不详,导致很多案例实际都执行不成功。本文档就是结合相关教程,通过VB宏方式接入ChatGPT,最终调试完成,分享给大家手把手详细教程。
说明
不同的版本和平台,可能有些差异,需要根据实际情况来调整。我的版本信息:
- PC版本:Windows 10
- Word版本:Microsoft Word 2013
第一步,创建宏模板
- 新建一个Word文档
- 打开开发工具视图:文件→选项→自定义功能区,勾选开发工具
![loading](https://img-blog.csdnimg.cn/img_convert/d0a57ce0a606b510c236585b768d2ea2.webp?x-oss-process=image/format,png)
- 回到主界面,点击:开发工具 → Visual Basic
![loading](https://img-blog.csdnimg.cn/img_convert/9620a44b602ad4452d270220b8a9a540.webp?x-oss-process=image/format,png)
- 这样就进入了VB的编辑窗口,点击插入→模块,就新建了一个代码框
![loading](https://img-blog.csdnimg.cn/img_convert/76cf36b7e594e282795a2ea5281cdc78.webp?x-oss-process=image/format,png)
- 复制下面的代码,把your_api_key替换成你自己的OpenAI的api_key,填入编辑窗口
Sub ChatGPT()
Dim selectedText As String
Dim apiKey As String
Dim response As Object, re As String
Dim midString As String
Dim ans As String
If Selection.Type = wdSelectionNormal Then
selectedText = Selection.Text
selectedText = Replace(selectedText, ChrW$(13), "")
apiKey = "your_api_key"
URL = "https://api.openai.com/v1/chat/completions"
Set response = CreateObject("MSXML2.XMLHTTP")
response.Open "POST", URL, False
response.setRequestHeader "Content-Type", "application/json"
response.setRequestHeader "Authorization", "Bearer " + apiKey
response.Send "{""model"":""gpt-3.5-turbo"", ""messages"":[{""role"":""user"",""content"":""" & selectedText & """}], ""temperature"":0.7}"
re = response.responseText
midString = Mid(re, InStr(re, """content"":""") + 11)
ans = Split(midString, """")(0)
ans = Replace(ans, "\n", "")
Selection.Text = selectedText & vbNewLine & ans
Else
Exit Sub
End If
End Sub
到此宏的VB编写完成。
第二步,添加工具栏图标
这一步的主要目标是在Word菜单栏,新建一个调用的入口
- 打开文件→选项→自定义功能区(跟第一步一样)
- 在自定义功能区,先新建选项卡,再新建组,然后在宏下面把上一步创建的宏放到里面。
![loading](https://img-blog.csdnimg.cn/img_convert/98f173649cbb067a717f2726d0d59a0d.webp?x-oss-process=image/format,png)
- 这样就在Word中多了一个ChatGPT选项卡
![loading](https://img-blog.csdnimg.cn/img_convert/e290272951287f23aeb0f30aa9d905b2.webp?x-oss-process=image/format,png)
第三步,使用
- 文档空白处写一段文字,如:写一篇关于夏天的散文,然后选中
- 点击ChatGPT选项卡→ChatGPT模块,等一下就可以看到生成的内容了
![loading](https://img-blog.csdnimg.cn/img_convert/e699641db0df33b38a67d110b1da3a20.webp?x-oss-process=image/format,png)
注意事项
- 需要导入一个库JsonConverter库。用于Json数据的解析
下载地址:https://github.com/VBA-tools/VBA-JSON
下载JsonConverter.bas,放在本地,然后在VB编辑窗口,文件→导入文件
![loading](https://img-blog.csdnimg.cn/img_convert/72d6851ef0cd2875a3bd896bff517aff.webp?x-oss-process=image/format,png)
- 还需要打开一些内部的库:工具→引用
![loading](https://img-blog.csdnimg.cn/img_convert/56634115233b5a9df3b855d1a1a765e4.webp?x-oss-process=image/format,png)
需要打开的有如下:
![loading](https://img-blog.csdnimg.cn/img_convert/50eae57581cf854e279f133d666f5c71.webp?x-oss-process=image/format,png)
- 如果有安全提示错误,还需要把VB安全选项设置一下:文件→选项→信任中心→信任中心设置
![loading](https://img-blog.csdnimg.cn/img_convert/0b06d3737f71cede8b63899610479091.webp?x-oss-process=image/format,png)
把启用所有宏打开
![loading](https://img-blog.csdnimg.cn/img_convert/f2de6f4249a2fa153071c5abcb354c7c.webp?x-oss-process=image/format,png)
- 另外,网络还需要魔法,否则请求出错。
总结
到此,就在Word文档的菜单栏新建了一个ChatGPT的选项卡,当我们需要写周报、写总结、写作文的时候,拟一个题目,选中点击一下图标,就把ChatGPT的能力接入到Word中了,使用过程非常丝滑。这个打通了,其中在Office的办公软件如Excel,PPT都可以接入,后续有需要,我再写一篇教程。
📣通知
我的《小白玩转ChatGPT》小册上线啦,已有200多位同学在里面学习,诸多福利一起赠送。只需一杯奶茶钱,让我们联系更紧密。
![loading](https://img-blog.csdnimg.cn/img_convert/43ddd83ec549565de7280c449f283b0a.webp?x-oss-process=image/format,png)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)