Excel SUMIFS і SUMIF з декількома критеріями - приклади формул

  • Поділитися Цим
Michael Brown

У цьому посібнику пояснюється різниця між функціями SUMIF і SUMIFS з точки зору їх синтаксису і використання, а також наводиться ряд прикладів формул для підсумовування значень з декількома критеріями AND / OR в Excel 365, 2021, 2019, 2016, 2013, 2010 і більш ранніх версіях.

Як всім відомо, Microsoft Excel надає безліч функцій для виконання різних обчислень з даними. Кілька статей тому ми розглядали СЧЕТЕСЛИ і СЧЕТЕСЛИ, які призначені для підрахунку комірок на основі однієї умови і декількох умов відповідно. Минулого тижня ми розглянули Excel СУММЕСЛИ, яка додає значення, що задовольняють заданим критеріям. Тепер прийшов час перейти до розгляду множинного варіанту функціїSUMIF - таблиця Excel SUMIFS, яка дозволяє підсумовувати значення за кількома критеріями.

Ті, хто знайомий з функцією SUMIF, можуть подумати, що для перетворення її в SUMIFS потрібна лише зайва буква "S" і кілька додаткових критеріїв. Здавалося б, це цілком логічно... але "логічно" це не завжди так, коли маєш справу з Microsoft : )

    Функція SUMIF Excel - синтаксис та використання

    Функція СУММЕСЛИ використовується для умовного підсумовування значень на основі єдині критерії Ми детально обговорили синтаксис SUMIF в попередній статті, а тут лише коротко нагадаємо.

    SUMIF(діапазон, критерії, [сума_діапазону])
    • діапазон - діапазон комірок, які необхідно оцінити за вашими критеріями, необхідний.
    • критерії - умова, яка повинна бути виконана, необхідна.
    • сума_діапазон - комірки для підсумовування при виконанні умови, необов'язково.

    Як бачите, синтаксис функції СУММЕСЛИ Excel допускає тільки одну умову. І все ж ми говоримо, що за допомогою функції СУММЕСЛИ Excel можна підсумовувати значення з декількома критеріями. Як це можливо? Шляхом додавання результатів декількох функцій СУММЕСЛИ і за допомогою формул СУММЕСЛИ з критеріями масиву, як це продемонстровано в прикладах, що наведені нижче.

    Функція СУММЕСЛИ Excel - синтаксис та використання

    Ви використовуєте SUMIFS в Excel для знаходження умовної суми значень за кількома критеріями Функція SUMIFS була введена в Excel 2007 і доступна у всіх наступних версіях Excel 2010, 2013, 2016, 2019, 2021 та Excel 365.

    У порівнянні з SUMIF, синтаксис SUMIFS трохи складніший:

    SUMIFS(діапазон_суми, діапазон_критеріїв1, критерії1, [діапазон_критеріїв2, критерії2], ...)

    Перші 3 аргументи є обов'язковими, додаткові діапазони та пов'язані з ними критерії є необов'язковими.

    • сума_діапазон - одна або декілька комірок для підсумовування. Це може бути одна комірка, діапазон комірок або іменований діапазон. Підсумовуються тільки комірки з числами; порожні та текстові значення ігноруються.
    • критерії_діапазон1 - перший діапазон, який буде оцінюватися за відповідними критеріями, обов'язково.
    • критерії1 - перша умова, яка повинна бути виконана, обов'язкова. Ви можете подати критерій у вигляді числа, логічного виразу, посилання на комірку, тексту або іншої функції Excel. Наприклад, ви можете використовувати такі критерії, як 10, ">=10", A1, "вишні" або СЬОГОДНІ().
    • критерії_діапазон2, критерії2, ... - це додаткові діапазони та критерії, пов'язані з ними, необов'язкові. У формулах SUMIFS можна використовувати до 127 пар діапазонів/критеріїв.

    Нотатки:

    • Для коректної роботи формули SUMIFS необхідно, щоб всі критерії_діапазон аргументи повинні мати ту ж розмірність, що і сума_діапазон тобто однакова кількість рядків і стовпців.
    • Функція SUMIFS працює з логікою AND, що означає, що комірка в діапазоні підсумовування підсумовується тільки в тому випадку, якщо вона відповідає всім зазначеним критеріям, тобто всі критерії істинні для цієї комірки.

    Базова формула SUMIFS

    А тепер давайте розглянемо формулу СУММЕСЛИ в Excel з двома умовами. Припустимо, у вас є таблиця з переліком партій фруктів від різних постачальників. У стовпці A вказані назви фруктів, у стовпці B - імена постачальників, а в стовпці C - їх кількість. Вам потрібно знайти суму сум, що відносяться до певного фрукта і постачальника, наприклад, всіх яблук, поставлених Петром.

    Коли ви вивчаєте щось нове, завжди добре починати з простих речей. Отже, для початку давайте визначимо всі аргументи для нашої формули SUMIFS:

    • sum_range - C2:C9
    • критерії_діапазон1 - A2:A9
    • критерій1 - "яблука"
    • критерії_діапазон2 - B2:B9
    • критерій2 - "Піт"

    Тепер зберіть вищевказані параметри, і ви отримаєте наступну формулу SUMIFS:

    =SUMIFS(C2:C9, A2:A9, "apples", B2:B9, "Pete")

    Для подальшого уточнення формули можна замінити текстові критерії "яблука" і "Петя" посиланнями на комірки. У цьому випадку не потрібно буде змінювати формулу для розрахунку кількості інших фруктів від іншого постачальника:

    =SUMIFS(C2:C9, A2:A9, F1, B2:B9, F2)

    Примітка: Обидві функції SUMIF і SUMIFS за своєю природою є регістронезалежними. Як змусити їх розпізнавати регістр тексту, див. статтю Регістронезалежні формули SUMIF і SUMIFS в Excel.

    SUMIF vs SUMIFS в Excel

    Оскільки метою даного уроку є охоплення всіх можливих способів підсумовування значень за кількома умовами, ми розглянемо приклади формул з обома функціями - СУММЕСЛИ Excel і СУММЕСЛИ з декількома критеріями. Щоб правильно ними користуватися, потрібно чітко розуміти, що спільного між цими двома функціями і чим вони відрізняються.

    У той час як спільна частина очевидна (схожа мета і параметри), відмінності не настільки очевидні, хоча і дуже суттєві.

    Існує 4 основні відмінності між SUMIF та SUMIFS:

    1. Кількість умов SUMIF може оцінювати тільки одну умову за один раз, в той час як SUMIFS може перевіряти декілька критеріїв.
    2. Синтаксис З SUMIF, в рамках проекту сума_діапазон є останнім і необов'язковим аргументом - якщо він не визначений, то значення в діапазон аргументи підсумовуються. За допомогою SUMIFS, сума_діапазон це перший і обов'язковий аргумент.
    3. Розміри полігонів. У формулах SUMIF, сума_діапазон не обов'язково має бути такого ж розміру та форми, як діапазон до тих пір, поки верхня ліва комірка буде правою. В Excel SUMIFS кожна критерії_діапазон повинен містити таку саму кількість рядків і стовпців, як і сума_діапазон аргумент.

      Наприклад, SUMIF(A2:A9,F1,C2:C18) поверне правильний результат, оскільки крайня ліва комірка в сума_діапазон Отже, Excel зробить виправлення автоматично і включить стільки стовпців і рядків, скільки потрібно, в сума_діапазон як і в діапазон .

      Формула SUMIFS з нерівнозначними діапазонами поверне помилку #VALUE!

    4. Наявність SUMIF доступний у всіх версіях Excel, від 365 до 2000. SUMIFS доступний в Excel 2007 і вище.

    Гаразд, досить стратегії (тобто теорії), перейдемо до тактики (тобто формульних прикладів : )

    Як використовувати СУММЕСЛИ в Excel - приклади формул

    Минулу хвилину ми обговорювали просту формулу СУММЕСЛИ з двома текстовими критеріями. Таким же чином можна використовувати формулу СУММЕСЛИ Excel з декількома критеріями, вираженими числами, датами, логічними виразами та іншими функціями Excel.

    Приклад 1. Excel СУММЕСЛИ з операторами порівняння

    У нашій таблиці постачальників фруктів, припустимо, ви хочете підсумувати всі поставки Майка з кількістю 200 або більше. Для цього ви використовуєте оператор порівняння "більше або дорівнює" (>=) в критерії2 і отримуєте наступну формулу SUMIFS:

    =SUMIFS(C2:C9,B2:B9,"Mike",C2:C9,">=200")

    Примітка. Звертаємо Вашу увагу, що у формулах Excel SUMIFS логічні вирази з операторами порівняння завжди слід брати в подвійні лапки ("").

    Ми детально розглянули всі можливі оператори порівняння при обговоренні функції SUMIF Excel, ці ж оператори можна використовувати і в критеріях SUMIFS. Наприклад, наступна формула з поверненням суми всіх значень в комірках С2:С9, які більше або дорівнюють 200 і менше або дорівнюють 300.

    =SUMIFS(C2:C9, C2:C9,">=200", C2:C9,"<=300")

    Приклад 2. Використання підсумкових таблиць Excel з датами

    Якщо ви хочете підсумувати значення з декількома критеріями на основі поточної дати, використовуйте функцію СЬОГОДНІ() у ваших критеріях СУММЕСЛИ, як показано нижче. Наступна формула підсумовує значення в колонці D, якщо відповідна дата в колонці C припадає на останні 7 днів, включаючи сьогоднішній день:

    =SUMIFS(D2:D10, C2:C10,">="&TODAY()-7, C2:C10,"<="&TODAY())

    Примітка. При використанні іншої функції Excel разом з логічним оператором в критеріях необхідно використовувати амперсанд (&) для об'єднання рядка, наприклад, "<="&СЬОГОДНІ()".

    Аналогічним чином можна використовувати функцію SUMIF Excel для підсумовування значень у заданому діапазоні дат. Наприклад, наступна формула SUMIFS додає значення в комірках C2:C9, якщо дата в стовпчику B припадає на період з 1 жовтня 2014 року по 31 жовтня 2014 року включно.

    =SUMIFS(C2:C9, B2:B9, ">=10/1/2014", B2:B9, "<=10/31/2014")

    Такого ж результату можна досягти, обчисливши різницю двох SUMIF-функцій, як показано в цьому прикладі - Як використовувати SUMIF для підсумовування значень в заданому діапазоні дат. Однак, SUMIFS в Excel набагато простіше і зрозуміліше, чи не так?

    Приклад 3. Excel-суми з порожніми та непустими комірками

    При аналізі звітів та інших даних часто виникає необхідність підсумовувати значення, що відповідають або порожнім, або не порожнім коміркам.

    Критерії Опис Приклад формули
    Пусті клітинки "=" Значення суми відповідають порожнім клітинкам, які не містять абсолютно нічого - ні формули, ні рядка нульової довжини. =SUMIFS(C2:C10, A2:A10, "=", B2:B10, "=")

    Підсумувати значення в комірках C2:C10, якщо відповідні комірки в стовпчиках A та B абсолютно порожні. "" Значення суми, що відповідають "візуально" порожнім клітинкам, у тому числі тим, що містять порожні рядки, повернуті якою-небудь іншою функцією Excel (наприклад, клітинки з формулою типу). =SUMIFS(C2:C10, A2:A10, "", B2:B10, "")

    Підсумовує значення в комірках С2:С10 з тими ж умовами, що і в наведеній вище формулі, але включає порожні рядки. Непусті клітинки "" Сума значень, що відповідають непорожнім коміркам, включаючи рядки нульової довжини. =SUMIFS(C2:C10, A2:A10, "", B2:B10, "")

    Сума значень у комірках С2:С10, якщо відповідні комірки у стовпчиках А та В не є порожніми, включаючи комірки з порожніми рядками. SUM-SUMIF

    або

    SUM / LEN Сума значень, що відповідають непорожнім коміркам, не включаючи рядки нульової довжини. =SUM(C2:C10) - SUMIFS(C2:C10, A2:A10, "", B2:B10, "")

    =SUM((C2:C10) * (LEN(A2:A10)>0)*(LEN(B2:B10)>0))

    Значення суми в комірках С2:С10, якщо відповідні комірки в колонках А і В не порожні, комірки з рядками нульової довжини не враховуються.

    А тепер давайте подивимося, як можна використовувати формулу SUMIFS з "порожніми" та "не порожніми" критеріями на реальних даних.

    Припустимо, у вас є дата замовлення в колонці B, дата поставки в колонці C і кількість в колонці D. Як знайти загальну кількість продукції, яка ще не була поставлена? Тобто, ви хочете знати суму значень, що відповідають непорожнім клітинкам в колонці B і порожнім клітинкам в колонці C.

    Рішенням є використання формули SUMIFS з 2 критеріями:

    =SUMIFS(D2:D10, B2:B10,"", C2:C10,"=")

    Використання Excel SUMIF з декількома критеріями АБО

    Як зазначалося на початку цього уроку, функція СУММЕСЛИ побудована за допомогою логіки І. Але що робити, якщо потрібно підсумувати значення з декількома критеріями АБО, тобто коли виконується хоча б одна з умов?

    Приклад 1. SUMIF + SUMIF

    Найпростішим рішенням є підсумовування результатів, що повертаються декількома функціями SUMIF. Наприклад, наступна формула демонструє, як знайти загальну суму продуктів, поставлених Майком і Джоном:

    =SUMIF(C2:C9, "Mike",D2:D9) + SUMIF(C2:C9, "John",D2:D9)

    Як бачите, перша функція СУММЕСЛИ додає кількості, що відповідають "Майку", інша функція СУММЕСЛИ повертає кількості, що відносяться до "Джону", а потім ви додаєте ці 2 числа.

    Приклад 2. SUM & SUMIF з аргументом-масивом

    Наведене вище рішення дуже просте і може швидко виконати роботу, коли є лише кілька критеріїв. Але формула SUMIF + SUMIF може значно зрости, якщо ви хочете підсумувати значення з декількома умовами АБО. У цьому випадку кращим підходом є використання критерії масиву Розглянемо цей підхід на прикладі функції SUMIF.

    Ви можете почати з перерахування всіх умов, розділених комами, а потім укласти отриманий список, розділений комами, в {фігурні дужки}, які технічно називаються масивом.

    У попередньому прикладі, якщо потрібно підсумувати товари, поставлені Джоном, Майком та Пітом, то критерії масиву будуть мати вигляд {"John", "Mike", "Pete"}. А повна функція SUMIF має вигляд SUMIF(C2:C9, {"John", "Mike", "Pete"} ,D2:D9) .

    Аргумент масив, що складається з 3 значень, змушує формулу SUMIF повертати три окремі результати, але оскільки ми записуємо формулу в одній комірці, вона поверне тільки перший результат - тобто загальну кількість продуктів, доставлених Джоном. Щоб змусити цей підхід з використанням критеріїв масиву працювати, вам потрібно використовувати ще одну маленьку хитрість - помістити формулу SUMIF у функцію SUM, як це показано на малюнку:

    =SUM(SUMIF(C2:C9, {"John", "Mike", "Pete"} , D2:D9))

    Як бачите, критерій масиву робить формулу набагато компактнішою, ніж СУММЕСЛИ + СУММЕСЛИ, і дозволяє додавати в масив скільки завгодно значень.

    Цей підхід працює як з цифрами, так і з текстовими значеннями. Наприклад, якщо замість назв постачальників у колонці С ви вказали ідентифікатори постачальників 1, 2, 3 і т.д., то ваша формула SUMIF буде виглядати приблизно так:

    =SUM(SUMIF(C2:C9, {1,2,3} , D2:D9))

    На відміну від текстових значень, числа в аргументах масиву не потрібно брати в подвійні лапки.

    Приклад 3. SUMPRODUCT & SUMIF

    Якщо ви віддаєте перевагу перерахуванню критеріїв в окремих комірках, а не вказуєте їх безпосередньо у формулі, ви можете використовувати функцію СУММЕСЛИ в поєднанні з функцією СУММЕСЛИ, яка перемножує компоненти в заданих масивах і повертає суму цих добутків.

    =SUMPRODUCT(SUMIF(C2:C9, G2:G4, D2:D9))

    Де G2:G4 - клітинки, що містять ваші критерії, в нашому випадку назви постачальників, як показано на скріншоті нижче.

    Але, звичайно, ніщо не заважає вам при бажанні перерахувати значення в масиві критеріїв вашої функції SUMIF:

    =SUMPRODUCT(SUMIF(C2:C9, {"Mike", "John", "Pete"}, D2:D9))

    Результат, який повернуть обидві формули, буде ідентичний тому, що ви бачите на скріншоті:

    Excel СУММЕСЛИ з декількома критеріями АБО

    Якщо ви хочете умовно підсумувати значення в Excel не просто з декількома умовами АБО, а з декількома наборами умов, вам доведеться використовувати замість SUMIF використовувати SUMIFS. Формули будуть дуже схожі на ті, що ми щойно розглянули.

    Як завжди, приклад може допомогти краще проілюструвати це питання. У нашій таблиці постачальників фруктів додамо дату поставки (стовпчик E) і знайдемо загальну кількість фруктів, поставлених Майком, Джоном і Пітом у жовтні.

    Приклад 1: SUMIFS + SUMIFS

    Формула, отримана в результаті такого підходу, містить багато повторень і виглядає громіздкою, але вона легка для розуміння і, головне, працює :)

    =SUMIFS(D2:D9,C2:C9, "Mike", E2:E9,">=10/1/2014", E2:E9,"<=10/31/2014") +

    SUMIFS(D2:D9, C2:C9, "John", E2:E9, ">=10/1/2014", E2:E9, "<=10/31/2014") +

    SUMIFS(D2:D9, C2:C9, "Pete", E2:E9, ">=10/1/2014" ,E2:E9, "<=10/31/2014")

    Як бачите, для кожного з постачальників пишете окрему функцію СУММЕСЛИ і включаєте в неї дві умови - більше або дорівнює 1 жовтня (">=10/1/2014",) і менше або дорівнює 31 жовтня ("<=10/31/2014"), а потім підсумовуєте результати.

    Приклад 2. SUM & SUMIFS з аргументом масиву

    Я спробував пояснити суть цього підходу на прикладі SUMIF, тому тепер ми можемо просто скопіювати цю формулу, змінити порядок аргументів (як ви пам'ятаєте, він відрізняється в SUMIF і SUMIFS) і додати додаткові критерії. Отримана формула є більш компактною, ніж SUMIFS + SUMIFS:

    =SUM(SUMIFS(D2:D9,C2:C9, {"Mike", "John", "Pete"}, E2:E9,">=10/1/2014", E2:E9,"<=10/31/2014"))

    Результат, який повертає ця формула, точно такий же, як ви бачите на скріншоті вище.

    Приклад 3. СУМАРНИЙ ПРОДУКТ та СУМІФИ

    Як ви пам'ятаєте, підхід СУММЕСЛИ відрізняється від двох попередніх тим, що ви вводите кожен критерій в окрему комірку, а не вказуєте їх безпосередньо у формулі. У випадку декількох наборів критеріїв функції СУММЕСЛИ буде недостатньо, і вам доведеться використовувати також функцію СЧЕТЕСЛИ і СООТВЕТСТВУЮЩИЙ.

    Отже, якщо припустити, що Найменування поставок знаходяться в комірках Н1:Н3, Дата початку - в комірці Н4, а Дата закінчення - в комірці Н5, то наша формула СУММАРНОГО ПРОДУКТУ набуває наступного вигляду:

    =СУММЕСЛИ(--(E2:E9>=H4), --(E2:E9<=H5), --(ISNUMBER(MATCH(C2:C9, H1:H3,0))), D2:D9)

    Багато хто задається питанням, навіщо в формулах СУММЕСЛИ використовувати подвійне тире (--). Справа в тому, що в Excel СУММЕСЛИ ігнорує всі значення, крім числових, в той час як оператори порівняння в нашій формулі повертають логічні значення (TRUE / FALSE), які не є числовими. Для перетворення цих логічних значень в 1 і 0 використовується подвійний знак мінус, який технічно називається подвійним унарним оператором. Перший унарний оператор примушуєTRUE/FALSE на -1/0 відповідно. Другий унар заперечує значення, тобто змінює знак на протилежний, перетворюючи їх на +1 і 0, що може зрозуміти функція SUMPRODUCT.

    Сподіваюсь, наведене вище пояснення має сенс, а якщо ні, то просто запам'ятайте таке правило - використовуйте подвійний унарний оператор (--), коли ви використовуєте оператори порівняння у своїх формулах СУММЕСЛИ.

    Використання SUM в Excel у формулах масивів

    Як ви пам'ятаєте, Microsoft реалізувала функцію SUMIFS в Excel 2007. Якщо хтось досі користується Excel 2003, 2000 або більш ранніми версіями, то для додавання значень з декількома критеріями AND доведеться використовувати формулу масиву SUM. Природно, такий підхід працює і в сучасних версіях Excel 2013 - 2007, і його можна вважати старомодним аналогом функції SUMIFS.

    У формулах SUMIF, розглянутих вище, ви вже використовували аргументи масиву, але формула масиву - це дещо інше.

    Приклад 1. Сума з декількома критеріями І в Excel 2003 і більш ранніх версіях

    Повернемося до найпершого прикладу, де ми з'ясували суму сум, що стосуються певного фрукту та постачальника:

    Як ви вже знаєте, це завдання легко вирішується за допомогою звичайної формули SUMIFS:

    =SUMIFS(C2:C9, A2:A9, "apples", B2:B9, "Pete")

    А тепер давайте подивимося, як цю ж задачу можна виконати в ранніх "безсумових" версіях Excel. По-перше, ви записуєте всі умови, які повинні виконуватися, у вигляді діапазон="умова". У цьому прикладі у нас є дві пари діапазон/умова:

    Умова 1: A2:A9="яблука"

    Умова 2: B2:B9="Pete"

    Потім ви пишете формулу SUM, яка "перемножує" всі ваші пари діапазон/умова, кожна з яких укладена в дужки. Останній множник - це діапазон суми, C2:C9 в нашому випадку:

    =SUM((A2:A9="яблука") * (B2:B9="Петя") * (C2:C9))

    Як показано на скріншоті нижче, формула чудово працює в останній версії Excel 2013.

    Примітка. При введенні будь-якої формули масиву необхідно натиснути комбінацію клавіш Ctrl + Shift + Enter. Після цього формула буде укладена в {фігурні дужки}, що є візуальною ознакою того, що формула масиву введена правильно. Якщо ви спробуєте набрати дужки вручну, формула буде перетворена в текстовий рядок, і вона не буде працювати.

    Приклад 2. Формули масиву SUM в сучасних версіях Excel

    Навіть у сучасних версіях Excel не варто недооцінювати потужність функції SUM. Формула масиву SUM - це не просто гімнастика для розуму, а має практичне значення, що продемонстровано в наступному прикладі.

    Припустимо, у вас є два стовпці, B і C, і вам потрібно порахувати, у скільки разів стовпець C більше стовпця B, коли значення в стовпці C більше або дорівнює 10. Перше рішення, яке спадає на думку, - це використання формули масиву SUM:

    =SUM((C1:C10>=10) * (C1:C10>B1:B10))

    Не бачите практичного застосування до наведеної формули? Подумайте про неї по-іншому : )

    Припустимо, у вас є список замовлень, як показано на скріншоті нижче, і ви хочете дізнатися, скільки товарів не було поставлено в повному обсязі до певної дати. Перекладаючи на мову Excel, ми маємо наступні умови:

    Умова 1: Значення в колонці B (Замовлені позиції) більше 0

    Умова 2: Значення в колонці С (Поставлено) менше, ніж в колонці В

    Умова 3: Дата в колонці D (Дата виконання) є меншою, ніж 1.11.2014.

    Поєднавши три пари "діапазон/умова" разом, ви отримаєте наступну формулу:

    =SUM((B2:B10>=0)*(B2:B10>C2:C10)*(D2:D10

    Що ж, приклади формул, розглянуті в цьому підручнику, лише подряпали поверхню того, що насправді можуть робити функції SUMIFS і SUMIF в Excel. Але, сподіваємось, вони допомогли направити вас у правильному напрямку, і тепер ви можете підсумовувати значення у своїх робочих книгах Excel незалежно від того, скільки складних умов вам доведеться враховувати.

    Майкл Браун — відданий ентузіаст технологій із пристрастю до спрощення складних процесів за допомогою програмних засобів. Маючи понад десятирічний досвід роботи в технологічній індустрії, він відточив свої навички роботи з Microsoft Excel і Outlook, а також із Google Таблицями та Документами. Блог Майкла присвячений тому, щоб поділитися своїми знаннями та досвідом з іншими, надаючи прості поради та навчальні посібники для підвищення продуктивності та ефективності. Незалежно від того, чи є ви досвідченим професіоналом чи початківцем, блог Майкла пропонує цінну інформацію та практичні поради щодо отримання максимальної користі від цих основних програмних інструментів.