У меня есть лист Excel, в котором хранится время для отчетов (когда они были запущены, сначала обработаны, все еще открыты или уже закрыты, ...).

Для ясности в формулах Excel я дал имя всем столбцам, например:

  • name All_Still_Open : столбец Still_Open содержит TRUE или FALSE , результат формулы.
  • name All_Start_Dates : столбец Start Date содержит дату начала отчетов.

Я хотел бы знать среднее время, когда отчет еще открыт. Поэтому у меня есть следующая формула массива:

{=AVERAGE(IF(All_Still_Open;TODAY()-All_Start_Dates))}

(Фигурные скобки вводятся с помощью Ctrl+Shift+Enter)

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

Я пытался поместить в него IF предложение, но это не работает: предложение if, кажется, делает невозможным преобразование этого в формулу массива.

Я хотел бы что-то вроде следующего:

=IF(<condition>;0;{=AVERAGE(IF(All_Still_Open;TODAY()-All_Start_Dates))}

=> Следите за фигурными скобками.

Возможно ли это с помощью стандартного Excel или мне нужно написать свою собственную функцию для этого (которую я предпочитаю избегать по причинам читабельности)? (Кажется, что добавление фигурных скобок самостоятельно, без использования Ctrl+Shift+Enter, не работает.

0