前言

众所周知,WPS在2019版本后为了兼容国产化环境的宏开发功能,适配了一套JS宏,如果原先是VBA宏文件则需要适配运行。先出一版简易的转换文档吧,有不懂的或者没讲到的点小伙伴们可以在下方留言哦。

1.语法转换规则

基本技能:了解VBA与JS的语法

1.1.常量表达

布尔型转换JS时,区分大小写
VBATrue/FalseVBA
Jstrue/falseJS
更多资料查阅相关文档

1.2.运算符差异

运算符VBAJS
连接符&+
判断符===
赋值符号==

更多资料查阅相关文档

1.3.正则表达式

1.3.1.For循环

For循环
VBA在这里插入图片描述
JS在这里插入图片描述

1.3.1.While循环

While循环
VBA在这里插入图片描述
JS在这里插入图片描述
更多资料查阅相关文档

1.4. 其他

1.4.1.With方法

JS 与VBA不一致,需要写全对象,参考如下

宏语言
VBA在这里插入图片描述
JS在这里插入图片描述

1.5.函数调用规则

1.5.1.VBA与JS括号书写规则

- VBA中,如果要获取函数的返回值才用括号括起来

代码示例说明
set shape = shapes.Item(1)’这里Item为函数,获取返回值赋给shape
Debug.Print “Hello”’这里Print为函数,无需获取返回值

- JS 中,所有函数要用括号进行调用。

代码示例说明
shape = shapes.Item(1)’这里Item为函数,获取返回值赋给shape
Debug.Print(“Hello”)’这里Print为函数,无需获取返回值

1.5.2.入参规则

VBA 直接传参和指定参数传参

方式
直接传参直接在函数后按顺序依次填入对应参数,如: 在这里插入图片描述
指定传参传参格式: 参数名:=参数值,如: 在这里插入图片描述
JS 直接传参和指定参数传参
方式
直接传参直接在函数后按顺序依次填入对应参数,如:在这里插入图片描述
指定传参以Json的格式传入对应参数,如:在这里插入图片描述

2.WPS转换规则

2.1.监听事件

定义有细微区别,建议在JS宏编辑器中重新定义监听事件,如下图:
在这里插入图片描述
注意:在ET(表格)中VBA可以对不同的Sheet进行不同的监听
在这里插入图片描述
JS需要进行区分表格来实现同样效果
在这里插入图片描述

3.转换案例

[金山文档] VBA转JS例:合并表格.zip https://kdocs.cn/l/skctrwE0fKto
(Demo密码) rsa

转换说明:
Event: 监听事件
Button 按钮事件
在这里插入图片描述

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐