当表格需要对某一个单元值进行批量扩充时,比如:学生统计表中,需要对每个班“人数”都新增40行来填入学生信息。这个方法可以实现对含有特定内容的行下实现批量新增行。
/**
* 在某一列查找出现值的单元格,并在后面添加行
*/
function 识别单元格并在后面添加行()
{
//按实际需要修改表格名称 src dst
let dstWorkBook = Workbooks.Item("test2.xlsx");
let dstSheet1 = dstWorkBook.Worksheets.Item("项目分项估算表");
let dstSheet2 = dstWorkBook.Worksheets.Item("其他费用估算表");
let dstSheet3 = dstWorkBook.Worksheets.Item("Sheet1");
//查找的特定值
var target_value = "实施费";
//添加的行数
let x = 3;
dstSheet1.Activate();//激活目标表
let rowcount = Rows.Count;
let rowend = Cells(Rows.Count,1).End(xlUp).Row;//行数
Console.clear();
//遍历整个工作表,查找特定值(需要确定列)
for(let i=1;i<rowend;i++){
let cellCurrent = Cells(i,"D");
let val = cellCurrent.Value2;
if(val == target_value){//判断
let rowCurrent = cellCurrent.Row;
Debug.Print(rowCurrent);
dstSheet1.Rows.Item(rowCurrent).Select();
//插入行
if(MsgBox("确认是否在当前选中行插入"+x+"行",jsOKCancel)==1)
{
let range2 = Range(Rows(rowCurrent+1),Rows(rowCurrent+x));
range2.EntireRow.Insert();
let rowend = Cells(Rows.Count,1).End(xlUp).Row;
}else{
//MsgBox("代码还没写好hhh",jsOKCancel);
continue;
}
}else{
continue;
}
}
Debug.Print("已完成添加行");
}