选择包含合并单元格的行并删除它们(行)

Was*_*and 0 excel vba

谷歌搜索我找到了一个程序来突出显示活动工作表中的合并单元格:

Sub DeleteRows()
    Dim x As Range
    For Each x In ActiveSheet.UsedRange
        If x.MergeCells Then
            x.Interior.ColorIndex = 8
            ActiveCell.EntireRow.Delete
        End If
    Next
End Sub
Run Code Online (Sandbox Code Playgroud)

所以我添加了ActiveCell.EntireRow.Delete语句来删除当前迭代的行.

我哪里错了?

我并不关心突出显示合并的单元格.最终目标是删除其中包含合并单元格的任何行.

cyb*_*shu 6

找出所有合并的单元格范围,分享它们并一次性删除.


Sub DeleteRows()
    Dim x As Range
    Dim rngDelete As Range
    For Each x In ActiveSheet.UsedRange
        If x.MergeCells Then
            If rngDelete Is Nothing Then
                Set rngDelete = x
            Else
                Set rngDelete = Union(rngDelete, x)
            End If
        End If
    Next
    If Not rngDelete Is Nothing Then
        rngDelete.EntireRow.Delete
    End If
End Sub
Run Code Online (Sandbox Code Playgroud)