WPS宏实现表格批量插入多行

感觉这个过程有点繁琐,后面再改进吧。

/**

* 每隔3行插入2行空白行

*/

function Macro5()

{

//1、选中第一行

Range("A1").EntireRow.Select();

//2、统计表格有多少行数据,用于for循环控制次数,End(xlDown):一直向下直到空单元格停止

var a = Range("A1").Rows.End(xlDown).Row;

Console.log("表格有:"+a+"行数据");

var b = a/3;

Console.log("隔3插2要插:"+b+"次");

//3、Insert()方法只能插入1行,写for循环,插几行就循环几次,先插入两行用于后面copy

var c = 2;

for(var j=1;j<=c;j++){

Range("A5").EntireRow.Insert(xlShiftDown, true);

}

//4、选择框下移,目前在A5这行

ActiveCell.Offset(4, 0).EntireRow.Select();

//5、设置for循环条件,开始循环插入2行

for(var i=1;i<=b;i++){

/*知识点:

ActiveCell.Offset(5, 0) 光标向下移动到第四行位置,即第三行上方的位置

ActiveCell.EntireRow来引用当前活动单元格所在的整行

在Excel VBA中,Insert方法用于在指定的行之前插入新的行。Insert方法接受两个参数: ShiftRows和CopyOrigin。ShiftRows参数决定了插入行之后的行如何移动,可以是xlShiftDown或xlShiftToRight。CopyOrigin参数决定了新插入行的内容,可以是True或False,或者是一个Range对象

*/

//选择框下移5行,插入复制的A5、A6行,原有的行向下移动

ActiveCell.Offset(5, 0).EntireRow.Insert(xlShiftDown, Range("A5:A6").EntireRow.Copy());

ActiveCell.Offset(5, 0).EntireRow.Select();

}

}

相关推荐
菌菌的快乐生活3 天前
NoteExpress 一键归纳 WPS 文档引用文献教程
wps·noteexpress
ZnS_oscar3 天前
故障记录:Windows 资源管理器点击文件卡死 (WPS 触发)
windows·wps
专注VB编程开发20年7 天前
WPS 2024 Windows版UI用QT5和自研DirectUI-vba,jsa
qt·vba·wps·jsa·directui
扬帆破浪8 天前
麒麟系统安装察元 WPS AI 文档助手:免费、开源、离线部署说明
人工智能·开源·wps
扬帆破浪8 天前
免费开源的WPS AI 插件,离线安装、多系统与内网模型
人工智能·开源·wps
Evonso8 天前
Excel按照日期隔行颜色规则
wps
hashiqimiya9 天前
wps修改默认的字体号让以后的默认都是4号字体并修改间距
wps
骆驼爱记录10 天前
3步轻松去除WPS段落左侧符号
自动化·word·wps·新人首发
骆驼爱记录10 天前
表格居中无效的5大原因及解决方案
自动化·word·wps·新人首发
热爱生活的五柒12 天前
wps如何配置zotero,目前word中能看到zotero插件,但是wps中看不到
wps·zotero