Добрый день! Объясню суть самой проблемы! Я пытался реализовать условие, которое должно выполнить:
если предыдущая ячейка зеленая, то нужно вставить значение на текущую ячейку, но тут возникает ошибка которую я не понимаю и возможно не правильно гуглил(короче не нашел ответа). Прошу помощи у Вас! Для полной наглядности предоставляю скриншот таблицы и собственно сам код. Скорее всего я что то упустил или не учел! Буду благодарен за Вашу помощь!
Sub perebor()
Dim sh As Range
Dim i As Long
Dim j As Long
Dim bh As Range
Set wbs = ThisWorkbook.Worksheets("table1")
Set WBT = ThisWorkbook.Worksheets("mnd")
i = 3
j = 9
For Each sh In wbs.Range("N3:N71")
For Each bh In wbs.Range("M3:M71")
'белый -- 16777215
'серый -- 13421772
' зеленый -- 5880731
' оранжевый -- 4626167
If sh.Interior.Color = 16777215 Then
If bh.Interior.Color = 5880731 Then
j = j - 1
wbs.Cells(i, 14).Value = WBT.Cells(j, 1).Value
wbs.Cells(i, 15).Value = WBT.Cells(j, 1).Value
wbs.Cells(i, 14).Interior.Color = WBT.Cells(j, 1).Interior.Color
wbs.Cells(i, 15).Interior.Color = WBT.Cells(j, 1).Interior.Color
i = i + 1
End If
'wbs.Cells(i, 14).Value = WBT.Cells(j, 1).Value
'wbs.Cells(i, 15).Value = WBT.Cells(j, 1).Value
'wbs.Cells(i, 14).Interior.Color = WBT.Cells(j, 1).Interior.Color
'wbs.Cells(i, 15).Interior.Color = WBT.Cells(j, 1).Interior.Color
ElseIf sh.Interior.Color = 13421772 Then
wbs.Cells(i, 14).Value = wbs.Cells(i, 14).Value
i = i + 1
End If
Next bh
Next sh
End Sub