VBA условное форматирование на основе другого столбца - PullRequest
0 голосов
/ 27 октября 2018

У меня есть диапазон "A1: B10". Я хочу применить условное форматирование к диапазону A1: A10 таким образом, чтобы, если ячейка B в этой строке содержала текст «ok», применялся какой-либо формат к ячейке A в этой строке.

Пример:

A        B
text    ok
text    other text
text    ok

ячейки A1 и A3 будут отформатированы с помощью настройки условного форматирования. Я понимаю, как использовать FormatConditions.Add, когда дело доходит до тестирования тех же ячеек, которые я хочу отформатировать, но не тогда, когда оно основано на условии в других ячейках.

Спасибо

Ответы [ 2 ]

0 голосов
/ 27 октября 2018

При ссылке на ячейки, отличные от форматируемой, обратите внимание на абсолютные относительные ссылки.

Также обратите внимание на двойные кавычки, выходящие за кавычки.

Range("A1:B3").FormatConditions.Add Type:=xlExpression, Formula1:="=$B1=""ok"""
0 голосов
/ 27 октября 2018

Чтобы основать условное форматирование на других ячейках, обратитесь к другим ячейкам в формуле.

Selection.FormatConditions.Add Type:=xlExpression, Formula1:= _
    "=NOT(ISERROR(SEARCH(""ok"", B1)))"

Функция смещения работает и в формуле.

Range("A:A").FormatConditions.Add Type:=xlExpression, Formula1:= _
    "=OFFSET(A1, 0, 1)="ok""
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...