Зависимое правило проверки данных в Excel

275
Marie

У меня есть ячейка, в которой есть два выпадающих списка: Переменный или Фиксированный. Я пытаюсь разрешить следующей ячейке всем пользователям вводить любое число, когда выбрана переменная, но разрешить пользователям вводить 1 только тогда, когда выбрана фиксированная, иначе они получат сообщение проверки данных. Спасибо за помощь

0

2 ответа на вопрос

0
Bharat Anand

Предположим, ячейка B2 = фиксированная или переменная, и вы пытаетесь установить проверку в соседней ячейке C2.

Добавьте приведенную ниже пользовательскую проверку для C2. Это только позволит C2 быть установленным в 1, если B2 "Fixed", или позволить C2 быть больше, чем 0, если B2 "Variable". Вы можете настроить второе условие AND, чтобы разрешить любые допустимые значения в C2, которые вам нужны:

= ИЛИ (И (В2 = "Fixed", С2 = 1), и (В2 = "Переменная", С2> 0))

Снимок экрана для формы пользовательских настроек проверки, как показано ниже:

enter image description here

0
robinCTS

Вот альтернативное (лучшее) решение.

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

Worksheet Screenshot

Введите следующее в качестве формулы проверки пользовательских данных для B2:

=(A2="")*(B2="")+(A2="Fixed")*(B2=1)+(A2="Variable")*ISNUMBER(B2) 

Убедитесь, что Ignore blankэто не проверено.

Предостережения:

К сожалению, это лучшее, что может быть достигнуто с помощью только проверки данных. Пользователи по-прежнему могут обойти проверку путем:

  • Выберите Variable, введите число, отличное от одного, в соседней ячейке, а затем выберитеFixed
  • Вставить любое значение в ячейку
  • Заполняя в клетку
  • Ctrl-ввод любого значения в выбранном диапазоне, если соседняя ячейка является частью, но не активной ячейкой диапазона.

Только способ сделать «надежной» проверки является использование VBA.

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

Похожие вопросы