网站首页
手机版

Excel接入AI大模型攻略:两种方法+隐藏彩蛋「豆包」更好用!

更新时间:作者:小小条

# 为什么要用Excel调用AI?

-自动化处理:直接让AI分析数据、生成文案、翻译内容

-零代码友好:插件党也能轻松玩转智能办公

Excel接入AI大模型攻略:两种方法+隐藏彩蛋「豆包」更好用!

-效率翻倍:告别手动复制粘贴,结果秒出单元格

#先说结论:

-两种方法:

1、通过写入VBA代码,用代码进行操作;

2、通过安装office AI 插件,调整设置的方式进行调用。

3、在office AI 插件设置中直接选择调用“豆包”大模型,可以实现对单元格的直接操作,不仅 仅是生成操作方法

#方法讲解:

-️ 方法一:VBA代码党专属(步骤如下,提供三个代码,任选一个)

适用人群:爱折腾的技术控 | 耗时:10分钟

操作步骤:

1、在TXT文件中完成代码编写:

代码1:

Sub calldeepseekapi()

Dim question As String

Dim response As String

Dim url As String

Dim apikey As String

Dim http As Object

Dim content As String

Dim startPos As Long

Dim endPos As Long

question = ThisWorkbook.Sheets(1).Range("A1").Value

url = "https://api.deepseek.com/v1/chat/completions"

apikey = "你的密钥"

Set http = CreateObject("MSXML2.XMLHTTP")

http.Open "POST", url, False

http.setRequestHeader "Content-Type", "application/json"

http.setRequestHeader "Authorization", "Bearer " & apikey

Dim requestBody As String

requestBody = "{""model"":""deepseek-chat"",""messages"":[{""role"":""user"",""content"":""" & question & """}]}"

http.send requestBody

If http.Status = 200 Then

response = http.responseText

startPos = InStr(response, """content"":""") + Len("""content"":""")

endPos = InStr(startPos, response, """")

content = Mid(response, startPos, endPos - startPos)

ThisWorkbook.Sheets(1).Range("A2").Value = content

Else

ThisWorkbook.Sheets(1).Range("A2").Value = "Error: " & http.Status & " -" & http.statusText

End If

End Sub


代码2:

Sub calldeepseekapi()

Dim question As String

Dim response As String

Dim url As String

Dim apikey As String

Dim http As Object

Dim content As String

Dim startPos As Long

Dim endPos As Long


' 获取问题

question = ThisWorkbook.Sheets(1).Range("A1").Value


' API 地址和密钥

url = "https://api.deepseek.com/v1/chat/completions"

apikey = "你的密钥"


' 创建 HTTP 请求对象

Set http = CreateObject("MSXML2.XMLHTTP")


' 打开请求

http.Open "POST", url, False


' 设置请求头

http.setRequestHeader "Content-Type", "application/json"

http.setRequestHeader "Authorization", "Bearer " & apikey


' 构建请求体

Dim requestBody As String

requestBody = "{ ""model"": ""deepseek-chat"", ""messages"": [ { ""role"": ""user"", ""content"": """ & question & """ } ] }"


' 发送请求

http.send requestBody


' 处理响应

If http.Status = 200 Then

response = http.responseText

' 查找 "content" 字段的起始位置

startPos = InStr(response, """content"": """) + Len("""content"": """)

' 查找 "content" 字段的结束位置

endPos = InStr(startPos, response, """")

' 提取内容

content = Mid(response, startPos, endPos - startPos)

' 将结果写入单元格

ThisWorkbook.Sheets(1).Range("A2").Value = content

Else

' 请求失败,将错误信息写入单元格

ThisWorkbook.Sheets(1).Range("A2").Value = "Request failed with status code: " & http.Status

End If

End Sub


代码3:

Sub calldeepseekapi()

Dim question As String

Dim response As String

Dim url As String

Dim apikey As String

Dim http As Object

Dim content As String

Dim requestBody As String


' 读取输入和配置

question = ThisWorkbook.Sheets("Sheet1").Range("A1").Value

url = "https://api.deepseek.com/v1/chat/completions"

apikey = "sk-your-api-key-here" ' 建议从单元格或安全存储读取


' 创建请求对象

Set http = CreateObject("MSXML2.XMLHTTP")

http.Open "POST", url, False

http.setRequestHeader "Content-Type", "application/json"

http.setRequestHeader "Authorization", "Bearer " & apikey


' 构建正确的JSON请求体

requestBody = "{""model"":""deepseek-chat"",""messages"":[{""role"":""user"",""content"":""" & question & """}]}"


On Error GoTo ErrorHandler

http.send requestBody


If http.Status = 200 Then

response = http.responseText

' 使用更可靠的JSON解析方法(需引用库)

' 此处示例简化,实际建议解析JSON

content = ExtractContent(response)

ThisWorkbook.Sheets("Sheet1").Range("A2").Value = content

Else

ThisWorkbook.Sheets("Sheet1").Range("A2").Value = "Error: " & http.Status & " - " & http.statusText

End If


Exit Sub


ErrorHandler:

ThisWorkbook.Sheets("Sheet1").Range("A2").Value = "Error: " & Err.Description

End Sub

' 辅助函数:解析JSON响应(需完善或使用库)

Function ExtractContent(jsonResponse As String) As String

Dim startPos As Long

Dim endPos As Long

startPos = InStr(jsonResponse, """content"":""") + Len("""content"":""")

endPos = InStr(startPos, jsonResponse, """")

ExtractContent = Mid(jsonResponse, startPos, endPos - startPos)

End Function


2、在Excel表格中打开Visual Basic编辑器,复制粘贴写好的代码,回到Excel工作表界面,打开“开发者工具”,选择插入“窗体控件按钮”,在工作表中选择你要插入控件的位置,鼠 标左键框选生成按钮

3、在A1单元格中编写你的请求提示词,在A2单元格中将生成你需要的结果。


-方法二:(步骤如下)

-适用人群:追求效率的办公族 | 耗时:3分钟

操作步骤:

1、安装office AI 插件:目前相关插件有两种,一种付费、一种免费。付费的插件主要是:Microsoft 365 Copilot和Google Duet AI,比较全面,但费用较高;免费的插件有海鹦、达 观等

2、安装完成后,在设置里面打开“大模型设置”,选择“本地部署”,选择“Apikey”,在“大模型”下拉列表中选择“deepseekR1”,模型名选择“deepseek-reasoner”,在 “API_KEY” 中粘贴你的deepseek apikey(这里不做介绍,可以自行搜索,很简单),完成以上操作后点击“保存”

3、在Excel工作表中点开“office AI”选项,打开右侧面板,在右侧对话框中输入你想完成指令的提示词即可。

⚠️ 避坑指南:

密钥需从DeepSeek官网获取(替换代码中的sk-your-api-key)

复杂问题建议用豆包模型(文末彩蛋)


# 试用情况分析:

-以上方法部署后,从试用情况分析,目前均存在较大的局限。统一的问题是:无法直接对单元格进行操作,只能生成操作方法的提示和步骤,与想要达成的智能效果还有距离,只能等待 deepseek和插件进一步结合。区别在于:方法一在A2单元格显示结果;方法二在右侧对话框显示结果。

-意外的收获:方法二中如果选用默认系统中的“豆包”大模型,可以直接对单元格完成操作,并生成结果。

# 实测对比:谁更胜一筹?

功能 VBA代码 插件+豆包模型

操作复杂度 ⭐⭐⭐⭐(需改代码) ⭐⭐(一键配置)

单元格直接操作 ❌ 仅显示结果 ✅ 自动填充/修改数据

错误处理 ⚠️ 依赖代码完善度 ✅ 自动提示修复建议


# 注意事项

API调用次数有限,复杂任务建议分段处理

敏感数据勿用免费插件(可选本地部署版)

首次使用建议从简单指令开始测试

版权声明:本文转载于今日头条,版权归作者所有,如果侵权,请联系本站编辑删除

为您推荐

AB罗克韦尔 SLC 500 BASIC模块和开发软件概述

SLC 500 BASIC 和 BASIC-T 模块和 BASIC 开发软件该模块和开发软件具有以下优点优势。- 便于从用户设备收集数据- 集成程序调试环境- 操作界面功能- 灵活的程序和数据存储选

2026-01-13 05:36

2025年12个免费AI制作PPT网站汇总,值得收藏!

是否感觉在制作 PowerPoint 幻灯片上花费了很长时间? 那么,是时候挣脱 PowerPoint 的牢笼,迎接更愉快的幻灯片制作体验了! 我们为您准备了秘密武器:12个免费AI制作PPT网站,帮助您

2026-01-13 05:35

Excel制作倒计时销毁功能,科幻电影既视感,太神奇了

知识改变命运,科技成就未来。看过电影《碟中谍》的小伙伴应该对电影中的这一环节印象很深刻,主人公在机密文件播放完毕后,文件采用倒计时的方式自动销毁,看起来很炫酷。在我们的

2026-01-13 05:35

Excel 自动化宏:释放办公效率的魔法

在日常办公中,我们常常需要重复执行一些繁琐的 Excel 操作,比如数据格式调整、报表生成等。Excel 自动化宏就像一个神奇的魔法,能将这些重复任务自动化,大大节省时间,提升办公效

2026-01-13 05:34

高中数学:不等式相关解法,证明,放缩,选做题全攻略,秒杀

版权声明:本文转载于今日头条,版权归作者所有,如果侵权,请联系本站编辑删除

2026-01-13 05:34

七年级下册数学:不等式组解法技巧、解集确定及常见题型要点!

不等式与不等式组它不仅是代数学习的基础,也是解决实际问题的重要工具。一、基本概念 什么是不等式? 不等式是用不等号(>、<、≥、≤、≠)连接两个代数式形成的式子。例如,x > 3

2026-01-13 05:33