Страницы: 1
RSS
Если ячейка желтого цвета, то значение другой = 1
 
Как сделать так, чтобы значение ячейки было равно 1, если другая ячейка зеленого желтого цвета?
Грубо говоря, надо сделать обратное условное форматирование
Изменено: Anton_Kozlov - 26.12.2019 14:56:07
 

Для жёлтого:

Код
Sub lol()
If ThisWorkbook.Sheets(1).Cells(1, 1).Interior.Color = vbYellow Then ThisWorkbook.Sheets(1).Cells(1, 2) = 1
end sub

Насколько Ваш "зеленый желтый цвет" желтый проверяйте через

Код
msgbox ThisWorkbook.Sheets(1).Cells(1, 1).Interior.Color

Изменено: Polkilo - 26.12.2019 15:05:58
 
Polkilo, А можно сделать как-то, чтобы это был не макрос, а формула в ячейке?  
 
Формулы без использования макросов не умеют определять цвет другой ячейки. Но могут сработать по условию, если ячейка закрашивается условным форматированием
 
Цитата
vikttur написал:
Формулы без использования макросов не умеют определять цвет другой ячейки.
А через макрофункции?
 
Цитата
Prosvetov написал: Формулы без использования макросов...
Макрофункции без разрешения работы макросов не работают. Это и подразумевал. А если разрешить работу макросов, то зачем Вам макрофункции?
 
UDF, работает с одной ячейкой, возвращает 0 или 1
Код
Function GYC(ByVal rng As Range) As Variant

If rng.Cells.Count > 1 Then
    GYC = "Range_Error"
    Exit Function
End If

If rng.Interior.Color = vbYellow Then
    GYC = 1
Else
    GYC = 0
End If

End Function
Страницы: 1
Наверх