wps文档中数字转人民币大写

wils
wils Lv.2 潜力创作者

Lv.2潜力创作者

昨天有朋友问,wps文档中,能否将选中范围的数字,一键转换为人民币大写

或如何批量替换文档中的数字,为人民币大写


主要使用这个库:

https://github.com/Sandwych/rmb_converter/blob/master/src/js/rmb_convert.js

昨天的朋友明确指出,不要用第三方软件,怕不安全

但这是纯代码,可以让AI解释每一句什么意思,完全风险可控

所以下面的操作就是,自己动手丰衣足食:


  1. 打开wps新建一个空白文档,点击工具,开发工具,WPS宏编辑器

  1. 在左侧找到Normal.dotm的项目,在他的代码里右键插入模块,在这里写的代码是全局可用的,不保存到日常用的docx文件里

  1. 插入,过程,给方法随便起个名比如rmb,从上面的网址复制粘贴全部代码,在后面添加自己的代码,就一行

Selection.Range.Text = RMBConverter.toUpper(parseFloat(Selection.Range.Text))
  1. 在文件,选项,快速访问工具栏里,添加刚才的rmb宏,就可以像最上面的图片那样,实现一键将选中的数字转为人民币大写了

  1. 如果需要批量替换文档中所有的数字,代码可以这样

for (const i of ActiveDocument.Paragraphs) {
    i.Range.Text = i.Range.Text.replace(/\d+(?:\.\d{1,2})?/g, m => RMBConverter.toUpper(parseFloat(m)))
}

总之,可以用AI检查代码,以保证安全

然后自己添加个按钮,就可以实现数字转人民币大写的效果

对于批量处理,可以自己随意写循环判断,非常灵活

海南省
浏览 441
收藏
6
分享
6 +1
16
+1
全部评论 16
 
Beisy_高
这个是不是得企业版呀,我用个人版的VB编辑器操作了一遍不能使用
· 天津
1
回复
wils
wilsLv.2 潜力创作者

Lv.2潜力创作者

我用的个人版 但这不是VB,是JS宏 在文件->选项里选中这个选项 然后才能看到wps宏编辑器
· 海南省
回复
 
HC.旋
HC.旋 WPS资深用户WPS寻令官Lv.2 潜力创作者

Lv.2潜力创作者

太需要这个,感谢威尔士老师
· 福建省
回复
wils
wilsLv.2 潜力创作者

Lv.2潜力创作者

感谢支持,不过替换的逻辑还需要优化,上面只是替换文本,也许会导致字体样式的变化
· 海南省
回复
 
拾光漫行
又来支持wils老师了
· 重庆
回复
wils
wilsLv.2 潜力创作者

Lv.2潜力创作者

多谢捧场
· 海南省
回复
 
Yam
就要官方出!
· 山西省
回复
wils
wilsLv.2 潜力创作者

Lv.2潜力创作者

肯定希望官方完善👍 但批量转换这一块,总是不如自己写宏控制来的灵活
·
回复