Невозможно раскрасить код до указанного значения c в динамическом диапазоне c - PullRequest
0 голосов
/ 12 апреля 2020

Я должен раскрасить код следующим образом. Общее количество строк составляет 139864 и всего 4 столбца. желтый - по умолчанию. коричневый - если любые два значения в строке равны (пример 1 3 1 4). зеленый - произойдет только после коричневого, если присутствуют два последовательных равных значения (пример 1 1 3 4), то меняйте цвет строки до достижения значения 37 в последнем столбце. Цвет строки должен изменяться на зеленый до значения = "37" всякий раз, когда обнаруживается коричневый цвет с двумя последовательными одинаковыми значениями в строке (пример 1 1 3 4).

Вот код, он отлично работает для желтого и коричневого

 Sub highlight()

   Dim mycell As Range
   Dim myRow As Long
  Dim myrange As Range 
 Dim myCol As Long

  Dim g As Integer

 Dim i As Long
 Dim y As Long

   'Count Number of Rows and Columns

 myRow = Cells(Rows.Count, 6).End(xlUp).Row
 myCol = Cells(6, Columns.Count).End(xlToLeft).Column
 'Loop Each Row To Check Duplicate Values and Highlight cells.

For i = 3 To myRow
 Set myrange = Range(Cells(i, 6), Cells(i, 9))

 myrange.Interior.ColorIndex = 27

For Each mycell In myrange

If WorksheetFunction.CountIf(myrange, mycell.Value) > 1 Then

 myrange.Interior.ColorIndex = 53   
End If

Next

Next

For i = 3 To myRow
Do

If Cells(i, 8).Value = Cells(i, 9).Value Then

Cells(i, 9).Interior.Color = 14
Else

End If

 Loop Until Cells(i, 9).Value = "37"

 Next
 End Sub
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...