如何编写一个在每个填充行之间插入n个空白行的macros? (其中n是2或更多)

(a)为什么我的代码在填充的行之间插入3行而不是插入1? (b)如何修改代码插入1行,或者在填充行之间插入5行?

在运行代码之前; 绿色的大纲显示我的select

在这里输入图像说明

运行代码后

在这里输入图像说明

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 

因为您正在遍历所有范围内的所有单元格,所以:A1,A2,…,A10,然后是B1,B2,… B10,并且您在任何行中不止一次地打空单元格

使用

 For Each MyCell In MyRange.Columns(1).Cells