让Word插上AI的翅膀:如何把DeepSeek装进Word

ops/2025/3/3 21:25:42/

在日常办公中,微软的Word无疑是我们最常用的文字处理工具。无论是撰写报告、编辑文档,还是整理笔记,Word都能胜任。然而,随着AI技术的飞速发展,尤其是DeepSeek的出现,我们的文字编辑方式正在发生革命性的变化。想象一下,如果在Word中直接调用DeepSeek的强大功能,岂不是事半功倍?

今天,我们就来聊聊如何通过VBA脚本,将DeepSeek与Word深度集成,打造一个“AI随行”的智能办公场景。

一、打开开发者模式

在开始之前,我们需要确保Word的“开发者工具”已经启用。别担心,这并不复杂,跟着我一步步来:

1. 打开Word,新建一个空白文档。

2. 点击左上角的“文件”,然后选择“选项”。

3. 在弹出的“Word选项”窗口中,选择“自定义功能区”。

4. 在右侧的“主选项卡”中,勾选“开发工具”,然后点击“确定”。

这样我们就可以使用Word中的VBA了。

二、信任VBA宏

为了让VBA脚本顺利运行,我们需要调整Word的宏安全设置:

1. 再次进入“文件”->“选项”->“信任中心”。

2. 点击“信任中心设置”,选择“宏设置”。

3. 勾选“启用所有宏”和“信任对VBA工程对象模型的访问”,然后点击“确定”。

设置信任宏

三、申请DeepSeek的API

我们可以进入硅基流动的官网,申请一个免费的API,可以进入以下页面。

硅基流动

注册完成后,生成一个密钥,把这个以sk-开头的密钥复制备用。

API界面

四、撰写VBA代码

接下来,就是重头戏了——编写VBA脚本,让Word能够调用DeepSeek的API。别被“编程”两个字吓到,代码我已经准备好了,你只需要复制粘贴即可:

1. 点击“开发工具”选项卡,选择“Visual Basic”按钮,打开VBA编辑器。

2. 在VBA编辑器中,点击“插入”->“模块”,新建一个模块。

添加模块

3. 将以下代码粘贴到模块中,如下图所示:

Function CallDeepSeekAPI(api_key As String, inputText As String) As StringDim API As StringDim SendExt As StringDim Http As ObjectDim status_code As IntegerDim response As StringAPI = "http://api.siliconflow.cn/v1/chat/completions"SendExt = "{""model"": ""deepseek-ai/DeepSeek-V3"", ""messages"": [{""role"":""system"",""content"":""You are a helpful assistant.""},{""role"":""user"",""content"":""" & inputText & """}]}"On Error Resume NextSet Http = CreateObject("MSXML2.XMLHTTP.6.0")If Err.Number <> 0 ThenCallDeepSeekAPI = "Error: Failed to create HTTP object - " & Err.DescriptionExit FunctionEnd IfWith Http.Open "POST", API, False.setRequestHeader "Content-Type", "application/json; charset=utf-8".setRequestHeader "Authorization", "Bearer " & api_key.Send SendExtIf Err.Number <> 0 ThenCallDeepSeekAPI = "Error: API request failed - " & Err.DescriptionExit FunctionEnd Ifstatus_code = .Statusresponse = .responseTextEnd WithOn Error GoTo 0If status_code = 200 ThenCallDeepSeekAPI = responseElseCallDeepSeekAPI = "HTTP " & status_code & " : " & responseEnd IfSet Http = Nothing
End Function
Sub DeepSeekV3()Dim api_key As StringDim inputText As StringDim response As StringDim regex As ObjectDim matches As ObjectDim originalSelection As Range' 设置 API 密钥api_key = "sk-这里换成硅基流动的DeepSeek V3 API"' 检查 API 密钥是否为空If api_key = "" ThenMsgBox "请填写API密钥", vbCriticalExit SubEnd If' 检查是否选择了文本If Selection.Type <> wdSelectionNormal ThenMsgBox "请先选择需要处理的文本", vbExclamationExit SubEnd If' 保存当前选中的文本范围Set originalSelection = Selection.RangeinputText = Trim(Replace(Selection.Text, vbCr, ""))' 调用 DeepSeek APIresponse = CallDeepSeekAPI(api_key, inputText)' 检查 API 调用是否出错If Left(response, 5) = "Error" ThenMsgBox response, vbCriticalExit SubEnd If' 使用正则表达式解析 API 响应Set regex = CreateObject("VBScript.RegExp")With regex.Global = True.MultiLine = True.IgnoreCase = False.Pattern = """content""\s*:\s*""([\s\S]*?)"""End WithIf matches.Count > 0 Then' 提取并处理响应内容response = matches(0).SubMatches(0)' 将 \n\n 替换为段落标记replacedText = Replace(response, "\n\n", vbCrLf)' 将处理后的内容插入文档originalSelection.Collapse Direction:=wdCollapseEndoriginalSelection.InsertAfter vbNewLine & replacedTextoriginalSelection.Start = originalSelection.Start + Len(vbNewLine & replacedText)ElseMsgBox "API响应解析失败:" & vbNewLine & replacedText, vbExclamationEnd If
End Sub

五、配置自定义按钮

为了让操作更加便捷,我们可以将VBA脚本绑定到一个自定义按钮上:

  1. 回到Word,点击“文件”->“选项”->“自定义功能区”。
  2. 在右侧的“主选项卡”中,右键点击“开发工具”,选择“添加新组”。
  3. 将新组重命名为“DeepSeek”,并选择一个你喜欢的图标。
  4. 在左侧的命令列表中,选择“宏”,找到我们刚刚创建的“CallDeepSeek”宏,将其添加到“DS生成”组中。
  5. 最后,将这个按钮重命名为“DeepSeek V3”。

六、测试效果

现在,一切准备就绪,让我们来测试一下:

1. 在Word中输入一段文字,比如“请帮我润色以下内容:今天天气真好,适合出去散步。”

2. 选中这段文字,点击“DS生成”按钮。

3. 稍等片刻,Word中就会显示DeepSeek生成的内容,比如“今日阳光明媚,正是外出散步的好时机。”

配置选项卡

如果你在其他Word文档中无法使用这个功能,别担心,这是因为宏没有被固化到Word的公用模板中。解决方法如下:点击“开发工具”->“宏”,选择“CallDeepSeek”宏。点击“管理器”,将“模块1”复制到“Normal.dotm”中。这样,以后所有新建的Word文档都可以直接使用DeepSeek功能了。

七、学后反思

通过VBA脚本,我们成功将DeepSeek与Word深度集成,打造了一个“AI随行”的智能办公场景。这种方案不仅解决了传统复制粘贴的低效问题,更通过VBA脚本的灵活扩展,让AI能力无缝嵌入文字创作流程。从文本生成、润色优化到内容拓展,用户只需轻点按钮即可完成复杂操作。

正如一位程序员朋友所说:“AI不是来抢饭碗的,而是来帮我们端饭碗的。”希望这篇文章能为你打开一扇新的大门,让你的Word从此插上DeepSeek的翅膀,飞得更高、更远!


http://www.ppmy.cn/ops/162523.html

相关文章

将DeepSeek接入vscode的N种方法

接入deepseek方法一:cline 步骤1:安装 Visual Studio Code 后,左侧导航栏上点击扩展。 步骤2:搜索 cline,找到插件后点击安装。 步骤3:在大模型下拉菜单中找到deep seek,然后下面的输入框输入你在deepseek申请的api key,就可以用了 让deepseek给我写了一首关于天气的…

ue5 创建多列StreeView的方法与理解

创建StreeView的多列样式怎么就像是创建单行单列差不多&#xff1f;貌似就是在单行单列中加入了多列widget? 目录结构&#xff1a; 必备条件 StreeView的多列创建需要的必备条件: 数据基类 CustomItemBase #pragma once /* ---------------------------------- | Name …

边缘计算收益低的三大指标

边缘计算收益低的三大指标主要包括以下方面&#xff1a; 1. 资源贡献不足&#xff1a; 边缘计算的收益通常基于所提供的带宽、存储和计算资源来计算。如果设备的网络带宽有限、在线时间短或提供的存储容量较小&#xff0c;可能无法满足平台设定的最低贡献标准&#xff0c;从而导…

在Linux上安装go环境

1、创建安装目录 [rootlocalhost ~]# mkdir go [rootlocalhost ~]# cd go/ 2、下载go文件解压 [rootlocalhost go]# wget https://golang.google.cn/dl/go1.24.0.linux-amd64.tar.gz [rootlocalhost go]# tar xf go1.24.0.linux-amd64.tar.gz 3、配置go环境变量 # 这里的路…

分布式数据存储:提升系统弹性与性能的技术之路

分布式数据存储:提升系统弹性与性能的技术之路 在当今数据爆炸式增长的时代,传统的单机存储系统已无法满足大规模、高并发、低延迟的需求。尤其是在大数据、云计算和物联网的推动下,数据存储面临着前所未有的挑战。分布式数据存储应运而生,通过将数据分布在多个物理节点上…

在 SQLite 中使用 SpatiaLite 实现地理空间数据自动化读写

地理空间数据&#xff08;如坐标点、区域边界&#xff09;的存储与查询是物联网、位置服务等领域的常见需求。本文提供一套简洁的解决方案&#xff0c;利用 SQLite 和 SpatiaLite 扩展&#xff0c;通过触发器和视图实现以下目标&#xff1a; 写入简化&#xff1a;直接插入人类…

Spring-AI搭建企业专属知识库 一

环境介绍&#xff1a;Spring3.3.2 JDK 21 POM文件 <?xml version"1.0" encoding"UTF-8"?> <project xmlns"http://maven.apache.org/POM/4.0.0"xmlns:xsi"http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation&…

[思考记录]AI时代下,悄然的改变

尝试用 xAI-Grok 去了解DS开源周的信息&#xff0c;有那么点被Grok的输出惊艳到。“请你以技术编辑的角色&#xff0c;重点参考官方文档&#xff0c;介绍DeepSeek开源周的内容&#xff0c;写一篇技术分享文章。”&#xff0c;得到的文字看起来很是舒服&#xff0c;内容靠谱、结…