Я не очень хорош в VBA, но я уже часами искал ответ в Интернете. Надеюсь, ты сможешь мне помочь.

Я хотел бы вставить строки над ячейками, которые заполнены определенным цветом (два разных цветовых индекса). Это действительно возможно? У меня есть только текст в столбце A. Поэтому мне понадобится некая формула, например, «если одна ячейка в столбце A черная или серая (colorindex 1 и?), Вставьте одну пустую белую строку выше.

Большое спасибо за ваши ответы.

1 ответ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

будет производить:

Это для черного, ColorIndex для серого зависит от того, какой оттенок серого вы используете.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .