Как суммировать диапазон ячеек со значениями 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 значения.


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

Вы можете преобразовать # 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)

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

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.