Я хочу, чтобы Excel остановил расчет, если введена неверная дата. Я попытался использовать "Проверка данных", используя приведенную ниже формулу =AND(ISNUMBER(E3),LEFT(CELL("format",E3),1)="D") .
Это работает, но расчет не останавливается даже на неправильных данных. Что приводит к # #VALUE! так как мои расчеты имеют некоторые циклические ссылки, поэтому рассчитанные значения как # #VALUE! не возвращается назад.

2 ответа2

0

Вы можете использовать if с iserror чтобы получить пустое значение, а не ошибку

=IF(ISERROR(AND(ISNUMBER(E3),LEFT(CELL("format",E3),1)="D")),"",AND(ISNUMBER(E3),LEFT(CELL("format",E3),1)="D")
0

Если вам не нужно конкретное управление ошибками, IFERROR дает более короткую формулу по сравнению с IF и ISERROR:
=IFERROR(AND(ISNUMBER(E3),LEFT(CELL("format",E3),1)="D"),"")

Конечно, в зависимости от формулы вашего ребенка вместо "" вы можете получить другие результаты (например, FALSE) в своей формуле.

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