У меня есть рабочий лист со списком «специальных ячеек» в столбце, например «C352», «E11» и т.д.

Как написать правило условного форматирования, которое просматривает столбец на другом листе, и, если эта ячейка находится в столбце, покрасить его определенным образом? Я знаю, как сделать ссылку на лист и раскраску, но не знаю, как это проверить, ссылка на ячейку находится в столбце.

2 ответа2

3

Используйте это как формулу условного формата

=MATCH(ADDRESS(ROW(),COLUMN(),4,1),AddressList!$A:$A,0)

Где лист и столбец, содержащий адреса, это лист AddressList , столбец A

Как это устроено

  • ROW() возвращает строку ячейки, содержащую формулу (либо в самой ячейке, либо в условном форматировании ячейки
  • COLUMN() то же самое для столбца
  • ADDRESS( r, c, 4, 1) возвращает адрес или строку r , столбец c . 4 означает относительный (т.е. нет $ . 1 означает стиль A1 . Таким образом, ADDRESS(ROW(),COLUMN(),4,1) будет адресом условно отформатированной ячейки в нотации A1
  • MATCH(val, AddressList!$A:$A, 0) ищет значение val в диапазоне AddressList!$A:$A , 0 означает точное совпадение. Возвращает номер строки, если val найден, #N/A если нет.
  • Условный формат рассматривает возможное число как True а #N/A как false.
1

Основываясь на вашем другом вопросе, я бы использовал формулу:

=IF(SUBSTITUTE(CELL("address",INDIRECT($C$1)),"$",)=SUBSTITUTE(CELL("address",D4),"$",),1,0)

в вашем условном формате. Это отформатирует D4 (или любые другие ячейки, к которым вы применяете условный формат) в зависимости от того, имеет ли C1 "D4".

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .