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();

}

}

相关推荐
辣香牛肉面31 分钟前
[Windows] OfficeAI 助手 v0.3.20(长期免费,2025-03-18 本地支持WPS_Word联动)
word·wps·办公助手
搏博2 天前
在WPS中通过JavaScript宏(JSA)调用DeepSeek官网API优化文档教程
javascript·人工智能·windows·深度学习·机器学习·wps
跑得动3 天前
头歌 | WPS 文档 设置分栏
wps
跑得动3 天前
头歌 | WPS 文档 设置样式
wps
yyywxk3 天前
Word / WPS 页面顶部标题 段前间距 失效 / 不起作用 / 不显示,标题紧贴页眉 问题及解决
word·wps
小李砸牛3 天前
怎么样在Windows系统上安装 的 WPS JS 插件
功能测试·wps
m0_694079473 天前
wps文档调整行距不起作用
wps
跑得动3 天前
头歌 | WPS文档基本操作
运维·服务器·wps
WW、forever4 天前
【WRF理论第十七期】单向/双向嵌套机制(含namelist.input详细介绍)
wps·wrf
jimin_callon6 天前
VBA第三十九期 VBA自动把工作表转换成PPT
python·excel·vba·wps·deepseek