(a)为什么我的代码在填充的行之间插入3行而不是只插入1? (b)如何修改代码以仅插入1行,或者在填充的行之间插入5行?
在运行代码之前;绿色轮廓显示我的选择
运行代码后
代码
Public Sub Insertrows()
Dim MyRange As Range
Dim MyCell As Range
Set MyRange = Selection
For Each MyCell In MyRange
If Not IsEmpty(MyCell) Then
MyCell.Offset(1, 0).EntireRow.Insert
End If
Next MyCell
End Sub
答案 0 :(得分:2)
因为您正在遍历所选范围的所有单元格,所以:A1,A2,...,A10然后是B1,B2,... B10,并且您在任何单元格中不会多次点击空单元格行
使用
For Each MyCell In MyRange.Columns(1).Cells