一、什么是JS宏?
wps宏编辑器集成了一个V8 引擎的 JAVAScript 运行时,支持大部分ES6语法,用户可通过编写 JS脚本来加速执行日常任务,还可以使用 JS为 WPS office添加新功能。
二、为什么要学习JS宏?
1、自动化操作。在使用WPS的过程中,经常会有重复操作的情景,这时我们可以通过编写JS宏代码或录制JS宏,减少大量不必要的重复性工作,使工作自动化,提高工作效率。
2、易于掌握。JS语法简单,学习门槛低,对于没有编程基础的小伙伴,也可以通过录制宏来记录用户的各种操作,WPS将自动把宏转换为JS代码,非常容易掌握。
3、功能强大。JS宏可以调用表格自带的函数,还可以自定义函数,文档使用者在有工作需要时,可以通过打开宏对话框去运行宏,也可以通过结合可视化的控件,在合适的控件响应时执行宏。
三、如何在工作中实战?
下面我们通过自动生成工资条来讲解一下JS宏如何在工作中应用。
原始工资条
首先我们录制新宏,先选中表头,然后同时按住shift和ctrl键,点击使用相对引用,按住鼠标左键下拉一行松开并停止录制宏,如图
下拉一次表头
我们点击宏编辑器,看到录制的代码
录制的JS宏
我们通过阅读代码,发现其中的规律,添加一个循环,来执行剩下的操作,效果如下
最终工资条效果
修改后的代码如下,如有不懂的地方可私信我,有问必答。
/**
* macro1 Macro
* 宏由 WPS定制 录制,时间: 2022/10/30
*/
function Macro1()
{
Application.windowstate = xlMinimized;
Application.Left = 0;
Application.Top = 37;
Application.WindowState = xlMaximized;
Range("A2:Q3").Select();
for(var i=0;i<2;i++)
{
Selection.Copy(undefined);
ActiveCell.Offset(2, 0).Range("A1:Q2").Insert(xlShiftDown, undefined);
Application.CutCopyMode = false;
ActiveCell.Offset(2, 0).Range("A1:Q2").Select();
ActiveCell.Rows.Item("1:1").EntireRow.RowHeight = 16;
ActiveCell.Offset(1, 0).Rows.Item("1:1").EntireRow.RowHeight = 17;
}
}