У меня следующая ситуация: я отформатировал с помощью FormatConditions диапазон, чтобы показать стиль «Хороший», если значения в диапазоне находятся между -2 и 2, и стиль «Плохой», если нет, используя этот код:
With Range("D46:AC53")
.FormatConditions.Add Type:=xlExpression, Formula1:= _
"=IF(AND(D46<2,D46>-2),TRUE,FALSE)"
With .FormatConditions(.FormatConditions.Count)
.SetFirstPriority
With .Interior
.PatternColorIndex = xlAutomatic
.Color = RGB(198, 239, 206)
.TintAndShade = 0
End With
.Font.Color = RGB(0, 98, 0)
End With
.FormatConditions.Add Type:=xlExpression, Formula1:= _
"=IF(AND(D46<2,D46>-2),FALSE,TRUE)"
With .FormatConditions(.FormatConditions.Count)
.SetFirstPriority
With .Interior
.PatternColorIndex = xlAutomatic
.Color = RGB(255, 199, 206)
.TintAndShade = 0
End With
.Font.Color = RGB(156, 0, 6)
End With
End With
Это прекрасно работает.
Теперь я хотел бы создать макрос-кнопку, которая определит, что если весь диапазон "D46: AC53" равен "Хорошо", показать значение "ИСТИНА""в конкретной ячейке.Я использовал этот код:
If Range("D46:AC53").Interior.Color = RGB(198, 239, 206) Then Range("c3").Value = "TRUE" Else Range("c3").Value = "FALSE"
Даже диапазон D46: AC53 выглядит как «Хорошо», кнопка возвращает мне «ЛОЖЬ».
Можете ли вы мне помочь?Что я делаю не так?
Спасибо, Александра
Я проверил цвет заливки в диапазоне, отформатированном с использованием первого кода, используя правый щелчок и форматирование ячеек, и он показывает, что я не заполняюсь.Я вручную отформатировал Range D46: AC53, используя стиль «Хороший» из стилей в Excel, и это заставляет макрос кнопки работать.