Проверка данных в вычисляемой ячейке
Я пытаюсь сделать проверку данных в ячейке B4, которая должна выводить ошибку в случае превышения лимита в ячейке B1 (например, 1000).
Для этого в ячейке B4 в настройках "Данные" -> "Проверка данных" выбираю проверку вводимых значений "Целое число", которое не должно превышать значение ячейки B1 (т.е. 1000) и настраиваю вывод сообщения об ошибке.
После чего, если вручную в ячейку B4 ввести число больше 1000 - выдается ошибка, но если ввести данные в ячейки B2 и B3 (например, 500 и 600), то проверка не выполняется (не выдается ошибка о превышении лимита в 1000 в ячейке B4.
Подскажите, как сделать проверку данных в вычисляемой ячейке?
Ответы (2 шт):
Проверку надо ставить на тех ячейках которые изменяете, т.е. на B2:B3
Тогда при попытке изменить значения в этих ячейках, формулы будут пересчитаны и выполнена проверка
Положительный эффект от применения Проверки данных - запрет ввода значений, сумма которых превысит лимит. И если цель - жесткое ограничение ввода, то это самое оно. Но такой вариант имеет и недостаток.
Пример. Лимит - 100 для суммы двух значений. Вписали первое - 70. Нужно вписать второе - 40. Да, на двух значениях можно увидеть, что сначала нужно уменьшить первое, чтобы второе не вызвало превышения лимита. А если суммируемых много? Пытаемся вписать число, Проверка данных запрещает, переходим к другой ячейке, исправляем, возвращаемся, чтобы вписать 40...
Если достаточно индикации состояния, можно применить Условное форматирование. В таком варианте можно видеть остаток/превышение лимита и, при необходимости, менять/"перетасовывать" премии.
Ячейка D1 залита зеленым цветом, в ячейке формула:
=ВЫБОР(ЗНАК(B1-B2)+2;
"Сумма средств превышает лимит на "&ТЕКСТ(B2-B1;"# ##0");
"Сумма выделенных средст равна лимиту";
"Остаток премиального фонда "&ТЕКСТ(B1-B2;"# ##0"))
Закладка Главная-Условное форматирование-Создать правило-Использовать формулу:
=$B$2>$B$1
Условный формат: белый жирный текст на красном фоне. Форматирование применено в к двум ячейкам.




