XelScript(可发音为CellScript),用于快捷处理一组Excel单元格。 通常情况下,Excel中要对多行进行处理,我们就必须创建公式,并拖动填充公式到所有行,当需处理的行数较大时,操作起来就比较麻烦,修改起来也比较麻烦。 本工具就是无需在表格内创建公式,而是在工具内创建计算代码,设定好来源单元格和目标单元格后,即可批量进行计算,将结果置于目标单元格中。 计算代码基于JavaScript和ActivexObject(通过ActiveX对象控制Excel或WPS),和VBA操作EXCEL是完全类似的,只是从Visual Basic语言换成了JavaScript。
- 代码储存在表格文件外,而VBA代码是绑定文件的,如果要在别的文件使用,就必须复制到别的文件中去。
- 可以使用JavaScript的所有功能,包括正则表达式。
- 可以使用ActiveX对象,通过ActiveX对象可以操作Excel或WPS。
- 可以使用Excel的所有功能,包括公式、函数等等。
- 可以使用Excel的所有对象,包括Workbook、Worksheet、Range等等。
- 打开Excel或WPS,打开一个表格。
- 打开XelScript,在输入框输入数据来源单元格名称,比如“A1:A15”,输出框输入目标单元格名称,在代码编辑区输入代码。
- 点击“运行”按钮,即可运行代码。本质上是将来源单元格按行生成数组,循环对行进行处理,将结果输出到目标单元格中(行号相应递增)。如果表达式是数组,就会将数组元素输出到目标单元格一行的多个单元格中。
- 点击“保存”按钮,即可保存代码。
- 点击“打开”按钮,即可加载代码。
- 代码可以是任意JavaScript代码,可以使用Excel的所有功能,包括公式、函数等等,也可以使用JavaScript的所有内置功能,包括正则表达式。注意,本应用不是基于NodeJs,所以不能使用NodeJs的内置模块,只能使用JavaScript的内置功能。JavaScript语法不支持JavaScript最新标准的某些功能。
- 代码预定义了一些变量,包括e:表示当前单元格,i:表示当前行号,arr表示行所形成的数组,_in表示输入单元格,_out表示输出单元格。