Excel VBA 使用特定格式在单元格上方插入行

Excel VBA 使用特定格式在单元格上方插入行

我不擅长 VBA,但我已经在网上找了几个小时的答案。希望你能帮助我。

我想在填充了特定颜色(两个不同的颜色索引)的单元格上方插入行。这真的可行吗?我只有 A 列中的文本。所以我需要一种公式,例如“如果 A 列中的一个单元格是黑色或灰色(颜色索引 1 和?),则在上面插入一个空白的白色行。

非常感谢您的回答。

答案1

使用如下数据:

在此处输入图片描述

运行此宏:

Sub RowYourBoat()
    Dim r1 As Range, r2 As Range, r3 As Range
    Set r1 = Range("A1:A" & Cells(Rows.Count, "A").End(xlUp).Row)
    Set r3 = Nothing

    For Each r2 In r1
        If r2.Interior.ColorIndex = 1 Then
            If r3 Is Nothing Then
                Set r3 = r2
            Else
                Set r3 = Union(r3, r2)
            End If
        End If
    Next r2

    If r3 Is Nothing Then
    Else
        r3.EntireRow.Insert
    End If
End Sub

将产生:

在此处输入图片描述

这是黑色的,颜色指数灰色取决于您使用的灰色程度。

相关内容