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

2 ответа2

0

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

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

Скриншот рабочего листа

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

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

Убедитесь, что Ignore blank оставлено непроверенным.

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

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

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

Единственный способ выполнить "надежную" проверку - использовать VBA.

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

0

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

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

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

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

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