Я создаю файл инвентаризации контракта с входными данными для всех контрактов. У меня есть 2 столбца, один для даты начала и другой для даты окончания. И отдельная ячейка, которая указала сегодняшнюю дату, используя =TODAY() .

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

=IF(DATEDIF($B$3,H8,"y")=0,"",DATEDIF($B$3,H8,"y")&" years, ")&IF(DATEDIF($B$3,H8,"ym")=0,"",DATEDIF($B$3,H8,"ym")&" months, ")&IF(DATEDIF($B$3,H8,"md")=0,"",DATEDIF($B$3,H8,"md")&" days")

Но когда дата окончания предшествует сегодняшней дате, она всегда показывает #NUM! , есть ли шанс показать как ноль вместо ошибки, когда контракт истек?

1 ответ1

1

Вы можете обернуть всю формулу с помощью IFERROR , поэтому она будет выглядеть следующим образом

=IFERROR(IF(DATEDIF($B$3,H8,"y")=0,"",DATEDIF($B$3,H8,"y")&" years, ")&IF(DATEDIF($B$3,H8,"ym")=0,"",DATEDIF($B$3,H8,"ym")&" months, ")&IF(DATEDIF($B$3,H8,"md")=0,"",DATEDIF($B$3,H8,"md")&" days"), 0)

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