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

В качестве примера приведены данные

   |  A |  B |  C
---+----+----+-----
 1 |  4 | 26 |
 2 |    |    |

Я хотел бы разрешить вводить в C1 только литеральные числовые значения больше 100.

Я попытался использовать DataData Validation → [ Allow = Decimal , Data = Greater than , Minimum = 100 ], но это также позволяет вводить определенные формулы. Если вы попытаетесь ввести =A1*B1 в ячейку C1 , поскольку она оценивается более чем в 100, проверка данных разрешит формулу.

Как применить это дополнительное ограничение без формул?

1 ответ1

0

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

Снимок экрана рабочего листа с формулой проверки данных

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

=VALUE(C1)>100

Затем измените числовой формат ячейки на Text:

Скриншот рабочего листа, показывающий числовой формат

Все попытки ввода формулы теперь будут вызывать ошибку проверки данных.

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

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

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