Как мне суммировать все четные или нечетные столбцы в Google таблицах?
Поставлена задача: суммировать все данные только из четных (или нечетных) столбцов.
Ко мне обратился подписчик с просьбой разъяснить ситуацию, при которой конструкция формулы через определение остатка от деления (так он определял четность столбца) не распространялась на конкретные столбцы, а выдавало 0 (нуль):
=SUM(IF(MOD(COLUMN(B6:F16);2)=0;B6:F16;0))
Давайте разберем формулу:
Подписчик задумал суммировать данные из четных столбцов.
«Если столбец четный, то никакого остатка от деления при определении порядкового номера столбца — не будет и функция SUM просуммирует значения из четных столбцов».
Он руководствовался логикой: если столбец четный, то остатка от деления не будет (будет = 0) и использовал функцию MOD для этой цели, а первым аргументом этой функции поставил функцию COLUMN, для определения порядкового номера столбца, а потом все это поместил в функцию IF, чтобы сработало условие для суммы диапазона с данными B6:F16 (для функции SUM).
А по факту: функция IF (ЕСЛИ) отработала по сценарию определения остатка от деления функции MOD = 1, и выдала результат в логической структуре = 0, так как остаток от деления не был равен нулю. А функция SUM вообще состояла из одного аргумента, значение которого и было равно значению, какое выдала функция IF (т.е. = 0).
Как суммировать все значения только в четных столбцах диапазона в Google таблицах?
Для суммирования всех чисел, стоящих только в четных столбцах: во 2м; 4м; 6м; и т.д. нужно использовать комплекс следующих функций:
=SUM(ARRAYFORMULA(IF(ISEVEN(COLUMN(C6:G15))=TRUE;C6:G15)))
- COLUMN — функция определяет порядковый номер столбца в диапазоне C6:G15
- ISEVEN — функция проверяет, является ли порядковый номер столбца, выданный через функцию COLUMN — четным. Если да, то выдает булево значение — TRUE
- IF — функция проверяет: если номер столбца — четный (TRUE), то выдавать значение диапазона C6:G15
- ARRAYFORMULA — функция массива. Распространяет результат работы вышеперечисленных функций на все строки
- SUM — функция выполняет суммирование всех четных столбцов по результатам работы комплекса предыдущих функций.
На скриншоте пронумерованы столбцы и я выделил красным — какие столбцы из диапазона суммируются.
По условию, нам нужно просуммировать числа только из четных столбцов, в результате = 60
Как суммировать все значения только в нечетных столбцах диапазона в Google таблицах?
Для суммирования всех чисел, стоящих только в нечетных столбцах: в 1м; 3м; 5м; и т.д. нужно использовать комплекс следующих функций:
=SUM(ARRAYFORMULA(IF(ISODD(COLUMN(C6:G15))=TRUE;C6:G15)))
- COLUMN — функция определяет порядковый номер столбца в диапазоне C6:G15
- ISODD — функция проверяет, является ли порядковый номер столбца, выданный через функцию COLUMN — нечетным. Если да, то выдает булево значение — TRUE
- IF — функция проверяет: если номер столбца — нечетный (TRUE), то выдавать значение диапазона C6:G15
- ARRAYFORMULA — функция массива. Распространяет результат работы вышеперечисленных функций на все строки
- SUM — функция выполняет суммирование всех четных столбцов по результатам работы комплекса предыдущих функций.
На скриншоте пронумерованы столбцы и я выделил красным — какие столбцы из диапазона суммируются.
По условию, нам нужно просуммировать числа только из нечетных столбцов, в результате = 90