Как суммировать диапазон ячеек со значениями N / A?

11

У меня есть диапазон, и мне нужно суммировать его с помощью функции SUM, но результат будет N / A, если есть какое-либо значение N / A. Как я могу заставить функцию SUM обрабатывать значение N / A как значение 0? Пожалуйста помоги!

Нам Г ВУ
источник

Ответы:

16

Использовать формулу массива

=SUM(IF(ISNA(A1:A4),0,A1:A4))

Нажмите Ctrl+ Shift+ Enterпосле ввода формулы

Примечание: замените A1:A4на ваш диапазон

Вильсон
источник
1
+1: хорошее улучшение моего решения - нет необходимости изменять исходные данные.
Майк Фицпатрик
1
Ницца. Никогда не думал об использовании формулы массива. Я был счастлив с использованием = SUMIF (A1: A4, "<> # N / A"), пока не обнаружил, что он ломается, если электронная таблица открывается в копии Excel, локализованной для другого языка! К сожалению, замена «<> # N / A» на «ISNA ()» не работает, но формула массива является хорошим многоязычным решением. К сожалению, этот подход не подходит для той же задачи с AVERAGEIF ()… :-(
Джо Кэрролл
@JoeCarroll, вы можете использовать=AVERAGE(IF(ISNA(A1:A4),"",A1:A4))
Уилсон
Спасибо @wilson! Когда я обдумал это кратко, я не думал об использовании "" вместо нуля, глупый я :-) Использование нуля, конечно, влияет на размер выборки, что привело меня к отклонению решения, но пустые ячейки просто игнорируются.
Джо Кэрролл,
Не работает с магическим Cr @ pXcel 2013, но ответ ниже (= агрегат) работает как шарм!
5

Самый простой способ:

Используйте SUMIFзначение> 0.

Таким образом, синтаксис для этого

=SUMIF(A1:B2, "> 0")

Вы получите тот же результат, поскольку он будет игнорировать любые нечисловые или 0 значения.

JNK
источник
2
Ваше предложение не будет работать с отрицательными числами. Спасибо, в любом случае.
Нам G VU
1
Могли бы сделать, =SUMIF(A1:B2, ">=0") + SUMIF(A1:B2, "<0")чтобы включить отрицательные числа. Я подозреваю, что это будет быстрее, чем принятое решение по формуле массива, если производительность является проблемой.
kizzx2
3

В Excel появилась новая функция, которая будет добавлять все значения как положительные, так и отрицательные, игнорируя значения NA.

=aggregate(9,6, range of your data) 

9 используется для суммы, а 6 - для игнорирования всех NA. Кроме того, есть и другие варианты. Например, вы можете сделать продукт, стандартное отклонение и так далее.

Больше информации об AGGREGATE здесь .

Мухаммад Ваджид Раза
источник
элегантное решение для Excel 2010 и далее :)
Уилсон
0

Используйте SUBTOTAL вместо:

=SUBTOTAL(9,A1:A50)
вариант
источник
Я пытаюсь, sumtotalно у меня та же проблема, что и сsum
fguillen
0

Вы можете преобразовать # N / A в нули в исходном диапазоне, а затем использовать обычную функцию SUM:

= IF (ISNA (OriginalFormula), 0, OriginalFormula)
Майк Фитцпатрик
источник
2
Начиная с Office 2007 появилась новая функция, IFERRORи тогда она может выглядеть так: =IFERROR(OriginalFormula,0)сделать ее намного приятнее.
Майкл
@agentmike, согласен, я использую его часто в эти дни.
Майк Фицпатрик,
0

Если есть формулы, которые я бы скопировал в виде чисел, замените # N / A в столбце на 0, а затем сложите как обычно

Синтия
источник
-1

Таким образом, это похоже на работу:

SUMIF(range;"<>#N/A";range)

Не такой надежный, но эффективный!

Bruno
источник