Добрый день.
На листе применяется условное форматирование к диапазону строк. (закрашиваем если условие верно)
Условие проверяет ячейку в строке, если дата в ячейке меньше текущей, то условие верно.
Дату в ячейку помещает макрос Cells(CopyPosx, 14) = Form.TextBoxDATA2 где CopyPosx - строка, Form.TextBoxDATA2 - текстовое поле с датой в формате dd.mm.yyyy
Проблема в том, что если дату в ячейку помещает макрос, то условное форматирование не работает.
Cells(CopyPosx, 14) = Format(Form.TextBoxDATA2, "dd.mm.yyyy") тоже не работает
Cells(CopyPosx, 14).FormulaR1C1 = Format(Form.TextBoxDATA2, "dd/mm/yyyy") и это тоже не работает
Если выделить ячейку и нажать клавишу Ввод (Enter), или выбрать другую ячейку, то условное форматирование закрашивает строку.
Добавлял Calculate, тоже не помогает.
Подскажите пожалуйста, что тут не так?
Если интересно, форматирование устанавливаю так
Sheets("Лист1").Cells.FormatConditions.Delete
With Sheets("Лист1").Range("B4:R" & iLastRow & "")
.FormatConditions.Add Type:=xlExpression, Formula1:="=И($N4 <> """"; $N4< СЕГОДНЯ())"
With .FormatConditions(1).Interior
.PatternColorIndex = xlAutomatic
.Color = 255
.TintAndShade = 0
End With
.FormatConditions(1).StopIfTrue = True
End With