Съдържание
Урокът показва как да използвате функцията SUMIF в електронните таблици на Google за условно сумиране на клетки. Ще намерите примери за формули за текст, числа и дати и ще научите как да сумирате с няколко критерия.
Някои от най-добрите функции в Google Sheets са тези, които ви помагат да обобщавате и категоризирате данни. Днес ще разгледаме по-отблизо една от тези функции - SUMIF - мощен инструмент за условно сумиране на клетки. Преди да разгледаме синтаксиса и примерите за формули, нека започна с няколко важни забележки.
Таблиците на Google разполагат с две функции за сумиране на числа въз основа на условия: SUMIF и SUMIFS . Първата оценява само едно условие, докато втората може да тества няколко условия едновременно. В този урок ще се съсредоточим единствено върху функцията SUMIF, а използването на SUMIFS ще бъде разгледано в следващата статия.
Ако знаете как да използвате SUMIF в настолен Excel или онлайн Excel, SUMIF в Google Sheets ще бъде за вас лесна задача, тъй като двете формули са по същество еднакви. Но не бързайте да затваряте тази страница - може да откриете няколко неочевидни, но много полезни SUMIF формули, които не сте знаели!
SUMIF в Google Sheets - синтаксис и основни приложения
Функцията SUMIF в Google Sheets е предназначена за сумиране на числови данни въз основа на едно условие. Синтаксисът ѝ е следният:
SUMIF(обхват, критерий, [sum_range])Къде:
- Обхват (задължително) - обхватът от клетки, които трябва да бъдат оценени от критерий .
- Критерий (задължително) - условието, което трябва да бъде изпълнено.
- Sum_range (незадължително) - обхватът, в който да се сумират числата. Ако се пропусне, тогава обхват се сумира.
Като пример, нека направим проста формула, която ще сумира числата в колона В, ако колона А съдържа елемент, равен на "примерния елемент".
За тази цел определяме следните аргументи:
- Обхват - списък с елементи - A5:A13.
- Критерий - клетка, съдържаща интересуващия ни елемент - B1.
- Sum_range - суми, които трябва да се сумират - B5:B13.
Ако съберем всички аргументи, ще получим следната формула:
=SUMIF(A5:A13,B1,B5:B13)
И тя работи точно както трябва:
Примери за SUMIF в Google Sheets
От горния пример може да останете с впечатлението, че използването на формулите SUMIF в електронните таблици на Google е толкова лесно, че бихте могли да го правите със затворени очи. В повечето случаи наистина е така :) Но все пак има някои трикове и нетривиални употреби, които биха могли да направят формулите ви по-ефективни. Примерите по-долу демонстрират няколко типични случая на употреба. За да направите примерите по-лесни за проследяване, ви приканвам даотворете нашия примерен SUMIF лист в Google.
Формули SUMIF с текстови критерии (точно съвпадение)
За да сумирате числа, които имат определен текст в друга колона на същия ред, просто въведете текста, който ви интересува, в полето критерий Както обикновено, всеки текст в който и да е аргумент на която и да е формула трябва да бъде заграден в "двойни кавички".
Например, за да получите общо банани , използвайте тази формула:
=SUMIF(A5:A13,"bananas",B5:B13)
Или можете да поставите критерия в някоя клетка и да се позовавате на тази клетка:
=SUMIF(A5:A13,B1,B5:B13)
Формулата е пределно ясна, нали? Сега как да получите общата сума на всички елементи с изключение на банани? За целта използвайте не е равен на оператор:
=SUMIF(A5:A13,"bananas",B5:B13)
Ако в клетката е въведен "елемент за изключване", тогава затваряте оператора "не е равно на" в двойни кавички ("") и съединявате оператора и препратката към клетката, като използвате амперсанд (&):
=SUMIF (A5:A13,""&B1, B5:B13)
Следващата снимка демонстрира в действие формулите "Сума, ако е равна на" и "Сума, ако не е равна на":
Обърнете внимание, че SUMIF в Google Sheets търси посочения текст. точно В този пример само Банани сумите се сумират, Зелени банани и Банани Goldfinger За да обобщите с частично съвпадение, използвайте заместващи символи, както е показано в следващия пример.
Формули SUMIF със заместващи символи (частично съвпадение)
В ситуации, в които искате да съберете клетките в една колона, ако клетка в друга колона съдържа определен текст или символ като част от съдържанието на клетката , включете един от следните заместители в критериите си:
- Въпросителен знак (?) за съвпадение с всеки отделен символ.
- Звездичка (*) за съвпадение на всяка последователност от символи.
Например, за да съберете количествата на всички видове банани, използвайте тази формула:
=SUMIF(A5:A13,"*bananas*",B5:B13)
Можете също така да използвате заместващи знаци заедно с препратки към клетки. За тази цел оградете заместващия знак в кавички и го свържете с препратка към клетка:
=SUMIF(A5:A13, "*"&B1& "*", B5:B13)
Така или иначе, нашата формула SUMIF събира количествата на всички банани:
За да съответствате на действителен въпросителен знак или звездичка, поставете префикс със знака тилда (~), например "~?" или "~*".
Например, за да съберете числата в колона В, които имат звездичка в колона А в същия ред, използвайте тази формула:
=SUMIF(A5:A13, "~*", B5:B13)
Можете дори да въведете звездичка в някоя клетка, например В1, и да свържете тази клетка със символа тилда:
=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 в аргумента sum_range аргумент. Готово!
Формули 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")
Сума, ако е равна на
За да съберете числа, които са равни на определено число, можете да използвате знака за равенство (=) заедно с числото или да пропуснете знака за равенство и да включите само числото в критерий аргумент.
Например, за да съберете суми в колона В, чието количество в колона С е равно на 10, използвайте някоя от следните формули:
=SUMIF(C5:C13, 10, B5:B13)
или
=SUMIF(C5:C13, "=10", B5:B13)
или
=SUMIF(C5:C13, B1, B5:B13)
Където B1 е клетката с необходимото количество.
Сума, ако не е равна на
За сумиране на числа, различни от зададеното, използвайте бутона не е равен на оператор ().
В нашия пример, за да съберете сумите в колона В, които имат някакво количество, освен 10 в колона С, използвайте една от тези формули:
=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:
Сума, ако е празно:
- "=" за сумиране на клетки, които са напълно празни.
- "" за сумиране на празни клетки, включително тези, които съдържат низове с нулева дължина.
Сума, ако не е празна:
- "" за сумиране на клетки, които съдържат всякаква стойност, включително низове с нулева дължина.
Например, за да се съберат сумите, за които е зададена дата на доставка (клетка в колона В е не е празен ), използвайте тази формула:
=SUMIF(C5:C13, "", B5:B13)
За да получите общия сбор на сумите без дата на доставка (клетка в колона В е празен ), използвайте този:
=SUMIF(C5:C13, "", B5:B13)
SUMIF на Google Sheets с множество критерии (логика OR)
Функцията 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, "apples" или "oranges", B:B).
Ако искате да съберете условно с И логически , т.е. да съберете стойностите, когато са изпълнени всички зададени критерии, използвайте функцията SUMIFS на Google Sheets.
SUMIF в Google Таблици - неща, които трябва да запомните
Сега, когато вече знаете всичко за функцията SUMIF в Google Sheets, може би е добре да направите кратко обобщение на наученото.
1. SUMIF може да оценява само едно условие
Синтаксисът на функцията SUMIF позволява само един обхват , един критерий и един sum_range . сума с множество критерии , или да добавите няколко функции SUMIF заедно (логика OR), или да използвате формули SUMIFS (логика AND).
2. Функцията SUMIF не се различава по размер на буквите
Ако търсите SUMIF формула с чувствителност към големи и малки букви, използвайте SUMIF в комбинация с ARRAYFORMULA и FIND, както е показано в този пример.
3. Доставка на еднакви по размер диапазони и sum_range
Всъщност sum_range определя само най-горната лява клетка на диапазона за сумиране, а останалата област се определя от размерите на обхват аргумент.
Казано по друг начин, SUMIF(A1:A10, "ябълки", B1:B10) и SUMIF(A1:A10, "ябълки", B1:B100) ще сумират стойности в диапазона B1:B10, защото той е със същия размер като обхват (A1:A10).
Така че, дори ако по погрешка въведете грешен диапазон за сумиране, Google Sheets все пак ще изчисли формулата ви правилно, при условие че горната лява клетка на sum_range е правилно.
Въпреки това се препоръчва да се осигурят еднакви по размер обхват и sum_range за да се избегнат грешки и да се предотвратят проблеми с непоследователността.
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, "apples", $B$2:$B$10).
Ето как се използва функцията SUMIF в Google Sheets. За да разгледате по-отблизо формулите, разгледани в този урок, можете да отворите нашия примерен SUMIF Google Sheet. Благодаря ви, че прочетохте, и се надявам да се видим в нашия блог следващата седмица!