代码如下:
Sub 插入行()
'
' 宏1 宏
'
' '定义两个动态数组存放B、C两列的数据
Dim a(), b()
'定义一个整数存放现有的数据行数
Dim m As Integer
'获取现有数据的行数
m = ActiveSheet.UsedRange.Rows.Count
'重新定义数组的大小
ReDim a(m), b(m)
'将B、C两列的数据赋值到a()、b()两个数组中
For i = 1 To m
a(i) = Cells(i, 2)
b(i) = Cells(i, 3)
Next
'选中第二行整行
Rows("2:2").EntireRow.Select
'开始空行的插入和单元格数据的填入
For i = 1 To m
For j = 1 To a(i)
'插入新的一行
Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
'将C列的值赋予新插入行的首个单元格
ActiveCell.Value = b(i)
'活动单元格下移一行
ActiveCell.Offset(1, 0).Rows("1:1").EntireRow.Select
Next
'活动单元格下移一行
ActiveCell.Offset(1, 0).Rows("1:1").EntireRow.Select
Next
End Sub
---------------------------------------------------------------------------------------
感觉可以,记得采纳哦!