Присвоить группам строк номера в зависимости от цвета ячеек - VBA

Формулировка задачи:

На листе строки разного цвета: зеленые, желтые, белые. Необходимо в крайнем левом пустом столбце присвоить всем строкам номера по следующему критерию: Проверяем столбец D. Если первая строка зеленая, то все белые после нее составляют вместе с ней группу - этой группе должно соответствовать одно значение, например 1. Если строка желтая - она не имеет группы, т.е. каждая желтая нумеруется отдельно - 2,3, и тд. Помогите, пожалуйста, как это можно реализовать? Для примера вручную пронумеровала первые строки.

Код к задаче: «Присвоить группам строк номера в зависимости от цвета ячеек - VBA»

textual
Sub tyuei()
    Dim i As Long
    Dim d As Long
    Dim lLastRow As Long
    lLastRow = Cells(Rows.Count, 5).End(xlUp).Row
    d = 1
    For i = 4 To lLastRow
        If Cells(i, 5).Interior.ColorIndex = 36 Then
            Cells(i, 2) = d
            d = d + 1
        ElseIf Cells(i, 5).Interior.ColorIndex = 35 Then
            Cells(i, 2) = d
            If Cells(i + 1, 5).Interior.ColorIndex = 36 Then
               d = d + 1
            End If
        ElseIf Cells(i, 5).Interior.ColorIndex = -4142 Then
            Cells(i, 2) = d
            If Cells(i + 1, 5).Interior.ColorIndex = 36 Or Cells(i + 1, 5).Interior.ColorIndex = 35 Then
               d = d + 1
            End If
        End If
    Next i
End Sub

11   голосов, оценка 3.818 из 5


СОХРАНИТЬ ССЫЛКУ
Похожие ответы