为每行具有相同值的值插入一行

为每行具有相同值的值插入一行

我有这个 VBA 函数,如果选中的行有值,它就会插入一个空白行。有人能帮我修复我的代码吗?我希望插入的行提取选中行的相同值。并且所有下一个空白行也都有这个值。

Sub InsertRowsAfter()
    Dim MyCell As Range
    For Each MyCell In Selection
        If MyCell.Value <> "" Then
            MyCell.Offset(1, 0).EntireRow.Insert
        End If
    Next MyCell
End Sub

从到: 到

答案1

如果已经有空行,为什么还要插入一行?

请尝试以下操作:

Sub InsertRowsAfter()
    Dim MyCell As Range
    For Each MyCell In Selection
        If MyCell.Value = "" Then
            MyCell.Value = MyCell.Offset(-1, 0).Value
        End If
    Next MyCell
End Sub

相关内容