Функция электронной таблицы для суммирования всех значений в одном столбце на основе критериев из другого столбца
-
22-08-2019 - |
Вопрос
Мне нужна функция электронной таблицы, которая будет выдавать сумму всех значений в столбце B, когда столбец A равен X
и когда оно равно Y
.
A B
X 10
Y 3
X 7
X 22
Y 4
Y 9
Выходные данные должны выглядеть следующим образом (где 39
и 16
являются результатами формул):
X 39 -> 10 + 7 + 22
Y 16 -> 3 + 4 + 9
Решение
Что- то вроде этого
X 10
Y 3
X 7
X 22
Y 4
Y 9
X "=SUMIF(A1:A6;A8;B1:B6)"
Y "=SUMIF(A1:A6;A9;B1:B6)"
Другие советы
использование SUMIF(range, criteria, sum_range)
:(суммируйте значения между B2-B8, используя значение в A2-A8 в качестве критерия, используя указанное условие)
=SUMIF(A2:A8,"=X",B2:B8)
=SUMIF(A2:A8,"=Y",B2:B8)
Вы можете использовать SUMPRODUCT
чтобы подсчитать итоговые значения.Для значений "X":
=SUMPRODUCT((A1:A6="X")*(B1:B6))
для значений "Y":
=SUMPRODUCT((A1:A6="Y")*(B1:B6))
Надеюсь, это поможет,
Эрик Мельски
Редактировать: Очевидно, вы должны использовать ARRAYFORMULA для использования SUMPRODUCT в электронной таблице Google.Смотрите, например http://www.google.com/support/forum/p/Google+Docs/thread?tid=13a3eb824446e891&hl=en
Одно быстрое и грязное решение - сделать две новые колонки.Для каждой строки x Cx должно быть что-то вроде =Ax=='X'?Bx:0.Проделайте то же самое для столбца D, но установите флажок Ax=='Y'.Затем суммируйте C и D.
(Не уверен, что это точно соответствует синтаксису электронных таблиц Google.)
О чем
=query(A:B, "select A, sum(B) group by A order by sum(B) desc")
Тот факт, что Google Docs не поддерживает sumproduct
и тот --
operator, как это делает Excel, немного беспокоит.Вы всегда могли бы воспроизвести функциональность, используя больше столбцов, но, как вы ответили в одном из своих комментариев, это кажется невозможным.
Вы могли бы проверить, отображается ли скрытый столбец в форме.Если это не так, то это правильный путь.