Как мне избежать "# DIV / 0!" ошибка в электронной таблице документов Google? - PullRequest
53 голосов
/ 06 июля 2011

У меня есть столбец с average(K23:M23), который начинается с #DIV/0!, когда ячейки от K23 до M23 пусты. Желательно, чтобы я делал только среднее значение для ячеек, которые содержат ненулевые непустые значения. Я думаю, что это возможно, используя команду запроса:

https://docs.google.com/support/bin/answer.py?hl=en&answer=159999

Но их пример мне не помогает.

Ответы [ 4 ]

107 голосов
/ 05 июля 2013

Оберните свою формулу с IFERROR.

=IFERROR(yourformula)
29 голосов
/ 02 сентября 2014

Вы можете использовать оператор IF, чтобы проверить указанные ячейки и вернуть один результат для нуля или пробела, а в противном случае вернуть результат формулы.

Простой пример:

=IF(B1=0;"";A1/B1)

Возвращается пустая строка, если делитель B1 пуст или равен нулю;в противном случае он возвращает результат деления A1 на B1.

В вашем случае выполнения среднего вы можете проверить, имеет ли ваш набор данных значение:

=IF(SUM(K23:M23)=0;"";AVERAGE(K23:M23))

Еслиничего не введено, или только нули, возвращается пустая строка;если присутствует одно или несколько значений, вы получите среднее значение.

1 голос
/ 08 ноября 2018

Обтекание существующей формулы в IFERROR не приведет к:

среднему числу ячеек, которые содержат ненулевые непустые значения.

Я предлагаю попробовать:

=if(ArrayFormula(isnumber(K23:M23)),AVERAGEIF(K23:M23,"<>0"),"")
1 голос
/ 11 ноября 2016

Так как вы явно просите обработать столбцы, которые еще не были заполнены, и я предполагаю, что не хочу связываться с ними, если у них есть слово вместо числа, вы можете рассмотреть это:

=If(IsNumber(K23), If(K23 > 0, ........., 0), 0)

Это просто говорит ... Если K23 это число;И если это число больше нуля;Затем сделайте что-нибудь ......... В противном случае верните ноль.

В ........., вы можете поместить туда свое уравнение деления, например A1/K23, и выможете быть уверены, что число K23 больше нуля.

...