ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 效率神器,一键搞定繁琐工作
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
让更多数据处理,一键完成 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
查看: 208|回复: 8

[原创] JSA的组件通信的再探索之二(将一张excel成绩总表按姓名批量模板化输出为docx文档)

[复制链接]

TA的精华主题

TA的得分主题

发表于 2024-12-19 21:31 | 显示全部楼层 |阅读模式
本帖最后由 spaghetti8 于 2024-12-20 11:06 编辑

JSA相比VBA,可参考的资料太少,这里的资料少指的是JSA中的A的资料少,JS是脚本语言,A是宿主的API,JS本身的资料是不缺的,做为前端的主要语言,随时可搜可取,但是JSA的宿主WPS,官方文档写的一塌糊涂,想找有用的资料太难了,很多时候不得不自己一次一次的摸索。
今天有坛友求助,如何将一张excel成绩总表按姓名批量模板化输出为docx文档,摸索后特写此贴,为丰富JSA的生态尽一点绵薄之力。









补充内容 (2024-12-24 16:19):
更新后的代码在12楼

补充内容 (2024-12-24 16:21):
上面补充写错了,下面这个帖子的更新了内容:JSA操作word将excel中的数据以邮件合并的方式转为固定模板格式
https://club.excelhome.net/thread-1705215-1-1.html
result.png
100个学生耗时.png
code.png

学生成绩表.rar

26.89 KB, 下载次数: 24

评分

3

查看全部评分

TA的精华主题

TA的得分主题

 楼主| 发表于 2024-12-19 21:32 | 显示全部楼层
本人的其他帖子:

一、前端流行库相关:
JSA加载前端流行库之一(lodash库)(附详细说明)
https://club.excelhome.net/thread-1696573-1-1.html
JSA加载前端流行库之二(ramda库)
https://club.excelhome.net/thread-1696617-1-1.html
JSA加载前端流行库之三(dayjs库)
https://club.excelhome.net/thread-1696930-1-1.html
JSA加载前端流行库之四(QRcode库),自己DIY二维码
https://club.excelhome.net/thread-1698154-1-1.html
JSA加载前端流行库之五(calendar库),实现阴阳历转换,天干地支,生肖,节气,星座的查询
https://club.excelhome.net/thread-1698477-1-1.html
JSA加载前端流行库之六(pinyin-pro库),具有将汉字转换为拼音等功能
https://club.excelhome.net/thread-1698767-1-1.html
JSA加载前端流行库之七(Chance.js库),随机数字,字符串,名字,城市,日期,地址,邮箱等
https://club.excelhome.net/thread-1699454-1-1.html
JSA加载前端流行库之八(danfo.js库),模拟python的pandas库
https://club.excelhome.net/thread-1702468-1-1.html

二、FileSystem相关:
FileSystem各种方法初探(2024年秋季更新 18608版本及以后版本)
https://club.excelhome.net/thread-1704117-1-1.html
利用FileSystem的方法递归遍历指定文件夹的所有层级文件(另有Value的另类用法)
https://club.excelhome.net/thread-1704539-1-1.html

三、Shell相关:
JSA利用FileSystem和Shell获取主机名,ip地址,id名,开机时间等信息
https://club.excelhome.net/thread-1705176-1-1.html
JSA用2行代码批量更改文件后缀名
https://club.excelhome.net/thread-1705404-1-1.html
家里的WIFI密码忘了吗?利用JSA获取你遗忘的WIFI密码
https://club.excelhome.net/thread-1705995-1-1.html
利用JSA将一整个文件夹移动至另一个文件夹内
https://club.excelhome.net/thread-1707094-1-1.html
根据歌手名字生成文件夹并移入对应文件
https://club.excelhome.net/thread-1707208-1-1.html
JSA利用shell对文件进行批量重命名
https://club.excelhome.net/thread-1708036-1-1.html

四、组件通信或WORD等相关:
18608版本及以后版本的表格、文档、PPT的互操作(组件通信)
https://club.excelhome.net/thread-1704317-1-1.html
JSA操作word将excel中的数据以邮件合并的方式转为固定模板格式
https://club.excelhome.net/thread-1705215-1-1.html
JSA的组件通信的再探索(批量将同一格式word中的数据写入到一张excel表)
https://club.excelhome.net/thread-1707085-1-1.html
JSA批量提取指定文件夹内docx格式里的符合正则表达式的内容
https://club.excelhome.net/thread-1708120-1-1.html
JSA的组件通信的再探索之二(将一张excel成绩总表按姓名批量模板化输出为docx文档)
https://club.excelhome.net/thread-1708313-1-1.html

五、网抓相关:
JSA网抓图片并保存至本地电脑的方法
https://club.excelhome.net/thread-1697161-1-1.html
JSA在不用fetch及wget的情况下网抓多张图片并聚合成一张图片然后导出至桌面
https://club.excelhome.net/thread-1698071-1-1.html

六、小玩意:
JSA制作一个周易八卦起卦解卦系统
https://club.excelhome.net/thread-1700973-1-1.html

七、其他:
JSA利用Range的隐藏函数将插入的图片直接变为嵌入式

https://club.excelhome.net/thread-1706547-1-1.html
JSA模拟会员功能将表格中指定单元格导出为图片至桌面
https://club.excelhome.net/thread-1698068-1-1.html
JSA在不打开表格的情况下读取里面的数据(真正的不打开表,而不是打开后再隐藏)
https://club.excelhome.net/thread-1697707-1-1.html
JSA自定义一个打印函数,让数组等数据结构在调试时更清晰.
https://club.excelhome.net/thread-1705080-1-1.html
sleep的多种写法(doEvents、yield、Promise、OnTime、Wait)

https://club.excelhome.net/thread-1706517-1-1.html
内外网隔离的电脑在无网络的情况下,不使用蓝牙及usb,通过手机摄像头对手机传输数据
https://club.excelhome.net/thread-1701087-1-1.html

八、LeetCode相关:
JSA解LeetCode经典100题(第一题:LeetCode_1.两数之和)
https://club.excelhome.net/thread-1705443-1-1.html
JSA解LeetCode经典100题(第二题:LeetCode_2.两数相加)
https://club.excelhome.net/thread-1705516-1-1.html
JSA解LeetCode经典100题(第三题:LeetCode_3.无重复字符的最长子串)
https://club.excelhome.net/thread-1705611-1-1.html
JSA解LeetCode经典100题(第四题:LeetCode_4.寻找两个有序数组的中位数)
https://club.excelhome.net/thread-1706077-1-1.html
JSA解LeetCode经典100题(第五题:LeetCode_5.最长回文子串)
https://club.excelhome.net/thread-1706384-1-1.html
JSA解LeetCode经典100题(第六题:LeetCode_10. 正则表达式匹配)
https://club.excelhome.net/thread-1706680-1-1.html
JSA解LeetCode经典100题(第七题:LeetCode_11.盛最多水的容器)
https://club.excelhome.net/thread-1706986-1-1.html
JSA解LeetCode经典100题(第八题:LeetCode_15.三数之和)
https://club.excelhome.net/thread-1707768-1-1.html
JSA解LeetCode经典100题(第九题:LeetCode_17.电话号码的字母组合)
https://club.excelhome.net/thread-1707922-1-1.html

九、密码相关:
JSA破解工作簿或工作表的保护密码
https://club.excelhome.net/thread-1707441-1-1.html

TA的精华主题

TA的得分主题

发表于 2024-12-19 22:14 | 显示全部楼层
不做成通用的,有点可惜了啊,感谢分享,有空我研究一下弄成通用的,其实也没啥难度,在我Word那个基础上改动一下即可,VBA我有写过一个

TA的精华主题

TA的得分主题

发表于 2024-12-20 11:23 | 显示全部楼层
老大,这个如何全部替换,这一句只能替换其中的一个
doc.Content.Find.Execute(v,false,true,false,false,false,true,false,false,val[x+1],true,false,false,false,false);
到底是哪个参数

TA的精华主题

TA的得分主题

发表于 2024-12-20 11:43 | 显示全部楼层

TA的精华主题

TA的得分主题

 楼主| 发表于 2024-12-20 14:30 | 显示全部楼层
这个也可以用邮件合并的方式解决.


JSA操作word将excel中的数据以邮件合并的方式转为固定模板格式
https://club.excelhome.net/thread-1705215-1-1.html


今天更新了一下代码,见12楼.

TA的精华主题

TA的得分主题

 楼主| 发表于 2024-12-20 14:31 | 显示全部楼层
lizhipei78 发表于 2024-12-20 11:23
老大,这个如何全部替换,这一句只能替换其中的一个
doc.Content.Find.Execute(v,false,true,false,false, ...

我也是瞎试的,胡乱摸索.

TA的精华主题

TA的得分主题

发表于 2024-12-24 12:02 | 显示全部楼层
const app = CreateObject("KWPS.Application");  第 13 列错误

TA的精华主题

TA的得分主题

 楼主| 发表于 2024-12-24 16:18 | 显示全部楼层
中华美德 发表于 2024-12-24 12:02
const app = CreateObject("KWPS.Application");  第 13 列错误

请将你的WPS升级至最新版,至少为18608版本
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2024-12-25 03:04 , Processed in 0.042999 second(s), 12 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

快速回复 返回顶部 返回列表