前言
发工资是一件开心的事情,但制作工资条并发送给每位员工这件工作可就没有那么开心了。
小公司,人少,还好说,手动拆分也花不了多久。如果公司规模大点,那这个工作量可不小啊。
今天,我们尝试通过 Coze
平台搭建一个"工资条助手",自动将工资表 Excel 拆分成一个个工资条,并通过邮箱发送到员工邮箱。

大家如果想要跟做一下,可以按照下文创建工资表 Excel,也可以按照文末方法直接获取工资表文件进行尝试。
之前一直在使用 Coze
平台的 AI 能力,这次我们换个思路,不使用 AI,直接将 Coze
平台作为一个低代码开发平台使用。
场景描述
将工资整理到一个 Excel 中,上传给"工资条助手"。
智能体通过插件读取 Excel,并按行拆分成一个个工资条数据,并通过插件生成工资条 Excel,然后调用邮箱插件以附件形式发送给员工。
核心流程:
上传表格 → 拆分数据 → 生成工资条 → 邮件发送 → 返回结果
前期准备
1、注册并登录 Coze 平台。
2、熟悉 Coze 平台的基本概念。
3、创建一个专用的智能体"工资条助手"。

4、提前准备好工资表数据。

配置智能体
人设与回复逻辑
本次分享由于主要功能都是通过工作流实现,该提示词不是特别重要,甚至留空也不影响。
模型
本次分享,未显式调用 AI 模型。
编制工作流
先了解一下完整的工作流情况。

工作流主要步骤:
- 开始
- 读取工资表
- 循环
- 循环变量格式转换
- 生成工资表excel
- 文件路径格式转换
- 提取邮箱
- 邮箱格式转换
- 发送邮件
- 结束
新建工作流 gongzitiaofenfazhushou
后直接进入工作流编排界面,我们依次介绍。
开始
删除原始的 input
变量,建立我们所需的接收图片的变量。

输入
- excel :上传的工资表excel,注意选择正确的文件类型
File-Excel
。 - title:标题,主要存放工资条名称,比如"2025年7月份工资条"
读取工资表
插件
节点,采用Excel文件操作
下ReadExcel2Dict
工具。

如下设置即可。

输入
- excelfilepathorurl:excel文件路径,选择"开始"节点的 excel 变量即可。
- sheetname:如果是多 Sheet 表格,可以指定,这里留空默认选择第一个 Sheet。
输出
主要是 records 变量,存储读取出来的数据,每一条都是 key 为 "records" 的 JSON 格式的字符串。

循环
读取完之后,我们就要通过循环针对每个人的工资条进行处理了。

重点只有一个循环数组 input,选择读取出来的工资表数据即可。
注意:以下循环前缀的节点都在循环体内。
循环:循环变量格式转换
业务逻辑
-代码
节点。

该节点没有业务需要,主要将循环遍历的工资条数据(对象)转换为"生成工资表excel"节点所需的格式。

循环变量中的 fields 是一个对象的 json 字符串,而"生成工资表excel"节点要求是装有一个对象的数组的 json 字符串。
注意开头结尾的中括号"[]"。
输入
- input:遍历的工资条数据中的 fields,可以参考"读取工资表"的输出。

代码
javascript
async function main({ params }: Args): Promise<Output> {
const input = JSON.parse(params.input)
const result = []
result.push(input)
const ret = {
"result": JSON.stringify(result)
};
return ret;
}
输出
与代码中的返回保持一致,设置为 result(String类型)。
循环:生成工资表excel
插件
节点,采用创建excel表格并下载
下excel_create_and_download
工具,免费使用,无需 token。

如下设置即可。

输入
- data:关联上一节点已经转换后的数据。
- title:关联"开始"节点的 title 变量,根据指令提取出来的标题。

输出
- download_url;生成文件的 url,后续可直接使用。
- message:当前节点操作结果。
循环:文件路径格式转换
组件
-文本处理
节点,借助字符串分隔的机制将上一节点的 download_url
包装为一个字符串数组,"发送邮件"节点中的附件参数要求。

转换前后对比如下:

选择应用
字符串分隔。
输入
- String :上一节点的
download_url
。
分隔符
这里只是借助字符串分隔机制,分隔符选择什么都可以。
输出
- output:一个字符串的数组。
循环:提取邮箱
组件
-JSON反序列化
节点,主要从循环变量中提取"邮箱"信息,作为后续发送邮件的收件地址。

输入
关联上循环变量中的 fields。

输出
这一步是我准备这次分享才学到的新内容,可以直接在输出中指定提取输出中的一个字段。

output 中有工资表中的一行数据,包括序号、姓名、邮箱、实发工资等等很多字段,这里设置"邮箱"后,后续节点就可以直接关联使用"邮箱"的数据了。
可对比参考"邮箱格式转换"节点。
循环:邮箱格式转换
组件
-文本处理
节点,和"文件路径格式转换"思路一致,将"邮箱"的字符串包装成为一个字符串数组,方便后续"发送邮件"节点使用。

具体内容可以参考"文件路径格式转换"节点。
循环:发送邮件
插件
节点,采用邮件助手Mail_Assistant
下send_mail
工具。

如下设置即可。

输入
- content:邮箱正文,写死的内容"工资,请笑纳!"。
- password:发送者邮箱开始 STMP 后的授权码,这个需要在邮箱中申请打开。
- recipients:收件人邮箱,支持多个,这里直接关联前面节点"邮箱格式转换"输出即可。
- sender_email:发送者邮箱,支持qq、163,注意 126 邮箱不支持。
- subject:主题,"开始"节点接收的标题。
- attachments:附件地址组成的数组,直接关联前面"文件路径格式转换"节点的输出即可。
- bcc_recipients:邮件的抄送对象,未使用。
- cc_recipients:邮件的抄送对象,未使用。
输出
- message:执行结果。
- sucess:是否发送成功。
结束节点
由于本次分享主要是发送邮件,结束节点直接输出了一个完成,方便查看。
工作流验证
使用的是前面的工资表数据。

结果
点击"试运行",可以看到全部运行成功。

效果
我们登录第一个员工对应的邮箱查看效果。

把附件下载下来看看。

效果还可以。
至此,关键的工作流编排就算完成了,下面直接发布即可。
工作流发布
我们点击工作流编排页面右上角的发布,即可将工作流加入智能体内,之后就可以通过商店直接访问了。
发布后使用和工作流调试效果没太大区别,这里就不浪费大家时间了。
结语
本次实战分享,我们用 Coze 实现了工资表自动拆分为工资条,并一对一邮件发送的场景。
关键点在于:
- excel相关插件的使用
- 各种变量格式的转换,包括代码和文本出来两种方式
- 邮件插件的使用
如果需要文中工资表文件,直接公众号后台发消息"20250730"即可。
你的工作中还有哪些重复性高、耗时长的任务,欢迎留言交流,我们一起使用 Coze 探讨解决!
好了,今天就到这里,大家生活愉快~