Оглавление
В уроке показано, как использовать функцию SUMIF в электронных таблицах Google для условного суммирования ячеек. Вы найдете примеры формул для текста, чисел и дат и узнаете, как суммировать по нескольким критериям.
Одними из лучших функций в Google Sheets являются те, которые помогают суммировать и классифицировать данные. Сегодня мы подробно рассмотрим одну из таких функций - SUMIF - мощный инструмент для условного суммирования ячеек. Прежде чем изучать синтаксис и примеры формул, позвольте мне начать с пары важных замечаний.
В Google Sheets есть две функции для сложения чисел на основе условий: SUMIF и SUMIFS Первая оценивает только одно условие, а вторая может проверять несколько условий одновременно. В этом учебнике мы сосредоточимся только на функции SUMIF, использование SUMIFS будет рассмотрено в следующей статье.
Если вы знаете, как использовать SUMIF в настольном Excel или Excel онлайн, то SUMIF в Google Sheets будет для вас проще простого, поскольку обе формулы по сути одинаковы. Но не спешите закрывать эту страницу - возможно, вы найдете несколько неочевидных, но очень полезных формул SUMIF, о которых вы не знали!
SUMIF в Google Sheets - синтаксис и основные способы использования
Функция SUMIF в Google Sheets предназначена для суммирования числовых данных на основе одного условия. Ее синтаксис выглядит следующим образом:
SUMIF(диапазон, критерий, [sum_range])Где:
- Диапазон (обязательно) - диапазон ячеек, которые должны быть оценены с помощью критерий .
- Критерий (требуется) - условие, которое должно быть выполнено.
- Sum_range (необязательно) - диапазон, в котором следует суммировать числа. Если опущено, то ассортимент суммируется.
В качестве примера составим простую формулу, которая будет суммировать числа в столбце B, если столбец A содержит элемент, равный "элементу образца".
Для этого мы определяем следующие аргументы:
- Диапазон - список предметов - A5:A13.
- Критерий - ячейку, содержащую интересующий элемент - B1.
- Sum_range - суммы, подлежащие суммированию - B5:B13.
Сложив все аргументы вместе, мы получаем следующую формулу:
=SUMIF(A5:A13,B1,B5:B13)
И он работает именно так, как должен:
Примеры SUMIF в Google Sheets
Из приведенного выше примера у вас может сложиться впечатление, что использование формул SUMIF в таблицах Google настолько просто, что вы можете делать это с закрытыми глазами. В большинстве случаев это действительно так :) Но все же есть некоторые хитрости и нетривиальные способы использования, которые могут сделать ваши формулы более эффективными. Приведенные ниже примеры демонстрируют несколько типичных случаев использования. Чтобы было легче следить за примерами, я приглашаю васоткройте наш образец SUMIF Google Sheet.
Формулы SUMIF с текстовыми критериями (точное совпадение)
Чтобы сложить числа, которые имеют определенный текст в другом столбце той же строки, достаточно указать интересующий текст в поле критерий аргумент вашей формулы SUMIF. Как обычно, любой текст в любом аргументе любой формулы должен быть заключен в "двойные кавычки".
Например, чтобы получить в общей сложности бананы , вы используете эту формулу:
=SUMIF(A5:A13,"bananas",B5:B13)
Или вы можете поместить критерий в какую-либо ячейку и ссылаться на эту ячейку:
=SUMIF(A5:A13,B1,B5:B13)
Эта формула кристально ясна, не так ли? Теперь, как вы получите общую сумму всех элементов кроме Бананы? Для этого используйте не равный оператор:
=SUMIF(A5:A13,"bananas",B5:B13)
Если в ячейку вводится "элемент исключения", то оператор not equal to заключают в двойные кавычки ("") и объединяют оператор и ссылку на ячейку с помощью амперсанда (&). Например:
=SUMIF (A5:A13,""&B1, B5:B13)
Следующий снимок экрана демонстрирует формулы "Сумма, если равно" и "Сумма, если не равно" в действии:
Обратите внимание, что SUMIF в Google Sheets ищет указанный текст именно В этом примере только Бананы суммы суммируются, Зеленые бананы и Бананы Goldfinger не включаются. Для суммирования с частичным совпадением используйте символы подстановки, как показано в следующем примере.
Формулы SUMIF с символами подстановки (частичное совпадение)
В ситуациях, когда вы хотите суммировать ячейки одного столбца, если ячейка другого столбца содержит определенный текст или символ как часть содержимого ячейки Включите в критерии один из следующих символов подстановки:
- Вопросительный знак (?) для соответствия любому одиночному символу.
- Звездочка (*) для соответствия любой последовательности символов.
Например, чтобы сложить суммы всех сортов бананов, используйте эту формулу:
=SUMIF(A5:A13,"*bananas*",B5:B13)
Вы также можете использовать символы подстановки вместе со ссылками на ячейки. Для этого заключите символ подстановки в кавычки и объедините его со ссылкой на ячейку:
=SUMIF(A5:A13, "*"&B1& "*", B5:B13)
В любом случае, наша формула SUMIF суммирует суммы всех бананов:
Чтобы сопоставить вопросительный знак или звездочку, добавьте к ним символ тильды (~), например "~?" или "~*".
Например, для суммирования чисел в столбце B, которые имеют звездочку в столбце A в той же строке, используйте эту формулу:
=SUMIF(A5:A13, "~*", B5:B13)
Вы даже можете ввести звездочку в какую-нибудь ячейку, скажем, B1, и объединить эту ячейку с тильдой char:
=SUMIF(A5:A13, "~"&B1, B5:B13)
SUMIF с учетом регистра в Google Sheets
По умолчанию SUMIF в Google Sheets не видит разницы между строчными и заглавными буквами. Чтобы заставить его по-разному воспринимать прописные и строчные символы, используйте SUMIF в сочетании с функциями FIND и ARRAYFORMULA:
SUMIF(ARRAYFORMULA( FIND(" текст ", range)), 1, sum_range)Предположим, у вас есть список номеров заказов в A5:A13 и соответствующих сумм в C5:C13, где один и тот же номер заказа встречается в нескольких строках. Вы вводите идентификатор целевого заказа в некоторую ячейку, скажем B1, и используете следующую формулу для возврата общей суммы заказа:
=SUMIF(ARRAYFORMULA(FIND(B1, A5:A13)),1, C5:C13)
Как работает эта формула
Чтобы лучше понять логику формулы, давайте разобьем ее на значимые части:
Самая сложная часть - это ассортимент аргумент: ARRAYFORMULA(FIND(B1, A5:A13))
Вы используете функцию FIND с учетом регистра для поиска точного идентификатора заказа. Проблема в том, что обычная формула FIND может искать только в одной ячейке. Для поиска в диапазоне необходима формула массива, поэтому FIND вложена в ARRAYFORMULA.
Когда вышеуказанная комбинация находит точное совпадение, она возвращает 1 (позицию первого найденного символа), в противном случае ошибка #VALUE. Таким образом, единственное, что вам остается сделать, это суммировать суммы, соответствующие 1. Для этого вы помещаете 1 в критерий аргумент, и C5:C13 в суммарный_диапазон аргумент. Готово!
Формулы SUMIF для чисел
Чтобы суммировать числа, удовлетворяющие определенному условию, используйте один из операторов сравнения в формуле SUMIF. В большинстве случаев выбор подходящего оператора не представляет проблемы. А вот правильное встраивание его в критерий может оказаться сложной задачей.
Сумма, если больше или меньше
Чтобы сравнить исходные числа с конкретным числом, используйте один из следующих логических операторов:
- больше, чем (>)
- меньше чем (<)
- больше или равно (>=)
- меньше или равно (<=)
Например, чтобы сложить числа в B5:B13, которые больше 200, используйте эту формулу:
=SUMIF(B5:B13, ">200")
Обратите внимание на правильный синтаксис критерия: число с префиксом оператора сравнения, а вся конструкция заключена в кавычки.
Или вы можете ввести число в некоторую ячейку и объединить оператор сравнения со ссылкой на ячейку:
=SUMIF(B5:B13, ">"&B1, B5:B13)
Можно даже ввести оператор сравнения и число в отдельные ячейки и объединить эти ячейки:
Аналогичным образом можно использовать и другие логические операторы, такие как:
Сумма, если она больше или равна 200:
=SUMIF(B5:B13, ">=200")
Сумма, если меньше 200:
=SUMIF(B5:B13, "<200")
Сумма, если меньше или равна 200:
=SUMIF(B5:B13, "<=200")
Сумма, если равна
Для суммирования чисел, равных определенному числу, можно использовать знак равенства (=) вместе с числом или опустить знак равенства и включить в сумму только число. критерий аргумент.
Например, чтобы сложить суммы в столбце B, количество которых в столбце C равно 10, используйте любую из приведенных ниже формул:
=SUMIF(C5:C13, 10, B5:B13)
или
=SUMIF(C5:C13, "=10", B5:B13)
или
=SUMIF(C5:C13, B1, B5:B13)
Где B1 - ячейка с требуемым количеством.
Сумма, если не равна
Чтобы суммировать числа, отличные от указанного, используйте функцию не равный оператор ().
В нашем примере, чтобы сложить суммы в столбце B, которые имеют любое количество, кроме 10, в столбце C, используйте одну из этих формул:
=SUMIF(C5:C13, "10", B5:B13)
=SUMIF(C5:C13, ""&B1, B5:B13)
На скриншоте ниже показан результат:
Формулы SUMIF в Google Sheets для дат
Для условного суммирования значений на основе критериев даты вы также используете операторы сравнения, как показано в примерах выше. Ключевым моментом является то, что дата должна быть предоставлена в формате, понятном Google Sheets.
Например, чтобы суммировать суммы в B5:B13 для дат поставки до 11 марта 2018 года, постройте критерий одним из следующих способов:
=SUMIF(C5:C13, "<3/11/2018", B5:B13)
=SUMIF(C5:C13, "<"&DATE(2018,3,11), B5:B13)
=SUMIF(C5:C13, "<"&B1, B5:B13)
Где B1 - целевая дата:
В случае, если вы хотите условно суммировать ячейки на основе сегодняшняя дата , включите функцию TODAY() в файл критерий аргумент.
В качестве примера составим формулу, которая суммирует суммы по сегодняшним поставкам:
=SUMIF(C5:C13, TODAY(), B5:B13)
Продолжая пример, мы можем найти общую сумму прошлых и будущих поставок:
До сегодняшнего дня: =SUMIF(C5:C13, "<"&TODAY(), B5:B13)
После сегодняшнего дня: =SUMIF(C5:C13, ">"&TODAY(), B5:B13)
Сумма на основе пустых или непустых ячеек
Во многих ситуациях вам может понадобиться суммировать значения в определенном столбце, если соответствующая ячейка в другом столбце пуста или не пуста.
Для этого используйте один из следующих критериев в формулах SUMIF в Google Sheets:
Сумма, если пусто:
- "=" для суммирования ячеек, которые полностью пусты.
- "" для суммирования пустых ячеек, включая те, которые содержат строки нулевой длины.
Сумма, если не пусто:
- "" для суммирования ячеек, содержащих любое значение, включая строки нулевой длины.
Например, для суммирования сумм, для которых установлена дата поставки (ячейка в столбце C является не пустой ), используйте эту формулу:
=SUMIF(C5:C13, "", B5:B13)
Чтобы получить итог по суммам без даты поставки (ячейка в столбце C является пустой ), используйте этот:
=SUMIF(C5:C13, "", B5:B13)
Google Sheets SUMIF с несколькими критериями (логика ИЛИ)
Функция SUMIF в Google Sheets предназначена для суммирования значений по одному критерию. Для суммирования по нескольким критериям можно сложить две или более функций SUMIF вместе.
Например, для суммирования Яблоки и Апельсины суммы, используйте эту формулу:
=SUMIF(A6:A14, "яблоки", B6:B14)+SUMIF(A6:A14, "апельсины", B6:B14)
Или поместите названия элементов в две отдельные ячейки, скажем, B1 и B2, и используйте каждую из этих ячеек в качестве критерия:
=SUMIF(A6:A14, B1, B6:B14)+SUMIF(A6:A14, B2, B6:B14)
Обратите внимание, что эта формула работает как SUMIF с логическое ИЛИ - суммирует значения, если выполняется хотя бы один из указанных критериев.
В этом примере мы добавляем значения в столбце B, если столбец A равен "яблоки" или "апельсины". Другими словами, SUMIF() + SUMIF() работает как следующая псевдоформула (не настоящая, она только демонстрирует логику!): sumif(A:A, "яблоки" или "апельсины", B:B).
Если вы хотите условно суммировать с И логический т.е. суммировать значения, когда все заданные критерии выполнены, используйте функцию Google Sheets SUMIFS.
Google Sheets SUMIF - что нужно помнить
Теперь, когда вы знаете все тонкости функции SUMIF в Google Sheets, будет неплохо подвести краткий итог того, что вы уже узнали.
1. SUMIF может оценивать только одно условие
Синтаксис функции SUMIF позволяет использовать только один ассортимент , один критерий и один суммарный_диапазон . Чтобы сумма с несколькими критериями либо сложить несколько функций SUMIF вместе (логика OR), либо использовать формулы SUMIFS (логика AND).
2. функция SUMIF не чувствительна к регистру символов
Если вам нужна формула SUMIF с учетом регистра, которая может различать прописные и строчные символы, используйте SUMIF в сочетании с ARRAYFORMULA и FIND, как показано в этом примере.
3. поставьте одинаковые по размеру range и sum_range
На самом деле суммарный_диапазон аргумент задает только самую верхнюю левую ячейку диапазона для суммирования, остальная область определяется размерами аргумента ассортимент аргумент.
Говоря иначе, SUMIF(A1:A10, "яблоки", B1:B10) и SUMIF(A1:A10, "яблоки", B1:B100) будут суммировать значения в диапазоне B1:B10, потому что он имеет тот же размер, что и диапазон B1:B10. ассортимент (A1:A10).
Таким образом, даже если вы по ошибке введете неправильный диапазон сумм, Google Sheets все равно рассчитает вашу формулу правильно, при условии, что верхняя левая ячейка в суммарный_диапазон правильно.
Тем не менее, все же рекомендуется обеспечить одинаковый размер ассортимент и суммарный_диапазон чтобы избежать ошибок и предотвратить проблемы несоответствия.
4. знать синтаксис критериев SUMIF
Чтобы формула SUMIF в Google Sheets работала правильно, выражайте критерии правильным образом:
- Если критерий включает текст , символ подстановки или логический оператор после которого следует число, текст или дата, заключите критерий в кавычки. Например:
=SUMIF(A2:A10, "яблоки", B2:B10)
=SUMIF(A2:A10, "*", B2:B10)
=SUMIF(A2:A10, ">5")
=SUMIF(A5:A10, "яблоки", B5:B10)
- Если критерий включает в себя логический оператор и ссылка на ячейку или другой функция Используйте кавычки для начала текстовой строки и амперсанд (&) для конкатенации и завершения строки. Например:
=SUMIF(A2:A10, ">"&B2)
=SUMIF(A2:A10, ">"&TODAY(), B2:B10)
5. При необходимости зафиксируйте диапазоны с абсолютными ссылками на ячейки
Если вы планируете скопировать или переместить формулу SUMIF позже, зафиксируйте диапазоны с помощью абсолютных ссылок на ячейки (со знаком $), как в SUMIF($A$2:$A$10, "яблоки", $B$2:$B$10).
Вот так можно использовать функцию SUMIF в Google Sheets. Для более детального изучения формул, рассмотренных в этом уроке, вы можете открыть наш образец SUMIF Google Sheet. Я благодарю вас за чтение и надеюсь увидеть вас в нашем блоге на следующей неделе!