Форматирование условия, как выделить ячейку, если она не содержит текста в списке

Добрый день

Мне интересно, какую пользовательскую формулу я должен использовать в форматировании условия, чтобы выделить ячейку, когда она не включает «имя части», которое у меня есть в списке на листе2

Я хочу, чтобы ячейка A4:A1000 становилась оранжевой, когда текст в ячейке рядом с ней "не является" в списке на Листе 2 A2:A100

дайте мне знать, какая дополнительная информация вам нужна... извините

В настоящее время я застрял с чем-то вроде этого....:
F4=indirect('Auto Fill'!A2:A343)
но мне нужно, чтобы этого не было в списке... чего также не хватает в этой формуле... так что, возможно:
F4= ISNOT indirect('Autofill'!A2:A343)


person Julian Wollmann    schedule 20.07.2018    source источник
comment
обновил мой вопрос... не уверен, как я могу объяснить это лучше...   -  person Julian Wollmann    schedule 21.07.2018
comment
Вы должны включить формулы, которые вы уже пробовали, в свой вопрос, как часть демонстрации усилий и исследования вашей проблемы.   -  person tehhowch    schedule 21.07.2018
comment
В настоящее время я застрял с чем-то вроде этого....: F4=indirect('Auto Fill'!A2:A343), но мне нужно, чтобы его не было в списке... чего также не хватает в этой формуле.. , поэтому: F4 = НЕ является косвенным («Автозаполнение»! A2: A343)   -  person Julian Wollmann    schedule 21.07.2018


Ответы (2)


Это обратная сторона вашего запроса — я оставлю читателю в качестве упражнения, как можно получить обратное.

По сути, вы хотите проверить, находится ли значение какой-либо ячейки в списке допустимых значений. Если бы вы вычисляли это как значение листа, вы бы использовали =COUNTIF. То же самое относится и к условному форматированию:

=COUNTIF({LOOKUP_RANGE_ABS_REF}, {VAL_TO_CHECK})
=COUNTIF($D$2:$D, B2)

Вот формула в действии:

введите здесь описание изображения

Обратите внимание, что T-3000 и колеса не указаны в столбце списка деталей и поэтому не совпадают.

Сравнение с другим рабочим листом в одной книге

Если сравниваемые данные не находятся на одном рабочем листе, ссылка на диапазон {LOOKUP_RANGE_ABS_REF} должна быть заключена в вызов INDIRECT(), т.е.

=COUNTIF(INDIRECT("{OTHER_WORKSHEET_NAME}!{LOOKUP_RANGE_ABS_REF}"), {VAL_TO_CHECK})
=COUNTIF(INDIRECT("some sheet name!$A$2:$A"), B2)

Согласно официальной документации,

Формулы могут ссылаться только на один и тот же лист, используя стандартную запись (='имя листа'!ячейка). Чтобы сослаться на другой лист в формуле, используйте функцию ДВССЫЛ.

Это также отмечено в нескольких других вопросах SO (хотя и с использованием других основных формул, кроме COUNTIF):

В этих ответах отсутствует предостережение о том, что только что добавленная косвенность не устойчива к изменениям значения {OTHER_WORKSHEET_NAME}, например. вы (или какой-либо другой редактор) изменили фактическое имя рабочего листа.

В отличие от традиционных формул, вводимых на листе, здесь нет справочной ссылки во время выполнения, которая будет обновлять статическое текстовое значение, которое вы должны были ввести при создании правила условного формата. Это отсутствие обновления ссылок на самом деле является одной из полезных функций INDIRECT(), поэтому не ждите, что она когда-либо изменится.

Более того, эталонный разрыв не будет сразу бросаться в глаза. Все элементы, которые были добавлены в диапазон форматирования после изменения имени, были рассчитаны по формату с использованием неработающей ссылки, но все элементы, добавленные до изменения имени, сохранят свой текущий формат. Только когда редактируется фактический диапазон, обернутый INDIRECT, любые ранее существовавшие условные форматы будут пересчитаны. Таким образом, вы можете не заметить, что лист был переименован, пока не добавите в список новую допустимую часть.

person tehhowch    schedule 21.07.2018
comment
@I'-'Я бы подумал, что я бы посмотрел туда.. упс - person tehhowch; 21.07.2018
comment
@pnuts Это дополнительные 5 символов, чтобы инвертировать поведение формулы. Я предпочитаю верить, что OP (и другие) могут вычислить логическую функцию. Я также предпочитаю использовать недвусмысленный язык электронных таблиц (рабочий лист, рабочая книга), а не лист и электронную таблицу. - person tehhowch; 23.07.2018

Быстрый кладж, импортируйте то, что вам нужно (я дал ему имя List) из листа2 (вам нужно будет предоставить разрешение), выберите столбец A и примените правило формулы CF:

=and(A1<>"",iserror(match(B1,IMPORTRANGE(" k e y ","List"),0)))
person pnuts    schedule 20.07.2018