2010-05-12 5 views
1

Я очень новичок в Excel и VBA и задавался вопросом, есть ли способ сделать условное форматирование на основе значений в выпадающем списке (созданном из проверки данных).Условное форматирование в Excel

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

Опять же, параметры, которые я хочу протестировать, находятся в раскрывающемся списке, который был создан для проверки данных.

+1

Вы хотите, чтобы условное форматирование сравнивало значение со значениями в поле «Список»? или вы хотите, чтобы фактическое поле списка меняло цвет? –

+0

Первый. Я хочу, чтобы условие сравнивало значение со значениями в спискеBox – littlevahn

+0

Я все еще работаю над этим. Как вы заполняете Listbox? Вы используете свойство ListFillRange или что-то еще? –

ответ

0

Самый простой способ сделать это - создать список в ячейках где-нибудь на вашем листе. Затем вы используете функцию named range, чтобы присвоить ей имя, допустим, для этого примера ValidList. Вы даете ему имя, выбирая список, затем перейдите в меню «Вставка» и выберите «Имя»> «Определить», затем введите имя и нажмите «ОК».

Затем вы переходите к ячейке в вопросах (мы будем использовать A1 для этого примера), выберите ее, затем перейдите в меню проверки данных. При выборе опции списка, введите следующую команду для Источника:

=ValidList 

Затем, клетка выбрана вы идете условное форматирование, выберите вариант формулы, а затем введите следующую формулу, и ваш желаемый результат:

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

0

Перейдите в меню Формат выберите «Состояние форматирование ...»

Вы можете установить формулы там для каких-либо условий.