灵犀claw创建skill(6)——代替邮件合并
wils
Lv.2潜力创作者
论坛上有不少wps邮件合并的问题,用起来不够方便不够灵活
曾经推荐Python里的docxtpl库,但需要写一点代码,大多数朋友不愿尝试
现在有了灵犀claw,写py不愁,使用docxtpl没有任何门槛了
不仅比邮件合并方便,更可以在模板里使用if判断、for循环等灵活控制
模板文件如图(写的不太规范,if不该放到一行内,以官方文档为准):
数据表包括姓名表和与之关联的项目表:
姓名 | 性别 |
张三 | 男 |
李四 | 女 |
王五 | 男 |
姓名 | 项目 |
张三 | 项目1 |
张三 | 项目2 |
李四 | 项目3 |
李四 | 项目4 |
李四 | 项目5 |
王五 | 项目6 |
王五 | 项目7 |
王五 | 项目8 |
王五 | 项目9 |
甚至不需要明示姓名表与项目表之间的关系,直接让claw:
创建skill,使用py里的docxtpl库,根据桌面上的a.dcox模板和a.xlsx数据,渲染{姓名}.docx文档到桌面,数据表里sheet1是姓名表,sheet2是关联的项目表
然后就可以使用skill生成结果
模板里的{{ 姓名 }}直接变量替换
{%- if 性别 == '男' %}是根据性别做判断,分别生成不同的称呼
{%tr for i in 项目 %}是循环生成表,项目表里查出几个项目就生成几行
相比邮件合并,现在使用docxtpl不再需要写代码,只需要变量名和表头对应,就可以在模板里用if、for等控制语句方便的控制渲染
而且因为skill是py脚本,可以在渲染前后加上处理图片,检查结果,发送邮件等更多流程,一步步完善之后可以稳定实现一键处理