Menu

SUMA.ILOCZYNÓW (SUMPRODUCT) w Excelu: suma z warunkami

=SUMA.ILOCZYNÓW(B2:B6;C2:C6) mnoży każdą ilość przez jej cenę i dodaje wyniki. Z warunkami takimi jak (A2:A7="North")*C2:C7 sumuje i liczy tam, gdzie SUMA.WARUNKÓW nie da rady: według miesiąca, kolumna z kolumną, z LUB.

Każdy arkusz na tej stronie działa na żywo: zmień liczbę albo formułę, a się przeliczy.

=SUMA.ILOCZYNÓW(B2:B6;C2:C6) (po angielsku =SUMPRODUCT(B2:B6,C2:C6)) mnoży każdą ilość z B przez cenę obok niej w C, a potem dodaje wyniki. Daje wartość zamówienia w jednej komórce, bez kolumny z wartościami pozycji. Tabele pokazują formuły po angielsku, ale możesz w nich wpisywać formuły także po polsku, ze średnikami.

Wartość zamówienia
F2
ABCDEF
1ItemQtyPriceLine totalTotal
2Pen4$1.50$6.00$30.70
3Notebook2$3.25$6.50$30.70
4Folder5$0.80$4.00
5Stapler1$7.90$7.90
6Marker3$2.10$6.30
Kliknij komórkę, aby zobaczyć jej formułę. Zmień liczbę albo formułę, a arkusz przeliczy się na nowo.W polskim Excelu: =SUMA.ILOCZYNÓW(B2:B6;C2:C6)

F2 i F3 pokazują tę samą kwotę, $30.70. Wartości pozycji w kolumnie D są tu tylko po to, żeby pokazać, co robi SUMA.ILOCZYNÓW: 4 × 1,50, 2 × 3,25 i tak dalej, a potem SUMA. Zmień ilość, a obie sumy się dostosują.

Składnia funkcji SUMA.ILOCZYNÓW

=SUMPRODUCT(array1, [array2], [array3], ...)
  • Każda tablica to zakres albo obliczenie, które go daje, i wszystkie muszą mieć ten sam rozmiar, inaczej SUMA.ILOCZYNÓW zwraca #ARG! (po angielsku #VALUE!; tabele pokazują angielskie nazwy błędów).
  • Przy dwóch lub więcej tablicach wartości na tych samych pozycjach są mnożone, a potem iloczyny są dodawane.
  • Przy jednej tablicy funkcja po prostu ją sumuje, i dlatego działają postacie z warunkami poniżej: =SUMA.ILOCZYNÓW((A2:A7="North")*C2:C7) ma jedną tablicę, już pomnożoną.
  • Tekst podany jako osobny argument liczy się jako 0. Tekst w obliczeniu z * powoduje #ARG!.

SUMA.ILOCZYNÓW działa z tablicami w każdej wersji Excela bez Ctrl+Shift+Enter (Cmd+Shift+Enter na Macu), i dlatego była standardowym narzędziem do sum warunkowych, zanim pojawiła się SUMA.WARUNKÓW, i nadal nim jest w przypadkach, z którymi SUMA.WARUNKÓW sobie nie radzi.

SUMA.ILOCZYNÓW z warunkami

Porównanie na zakresie, A2:A7="North", zwraca jedno PRAWDA albo FAŁSZ na wiersz. Mnożenie przez nie zostawia wiersze, w których jest PRAWDA (×1), i zeruje pozostałe (×0). Pomnóż dwa porównania, aby uzyskać ORAZ.

Suma i liczenie z warunkami
F2
ABCDEF
1RegionProductSalesFormulaResult
2NorthApple120North sales230
3SouthPear45North Apple sales150
4NorthPear80Count North3
5EastApple55Count over 504
6SouthApple200Without --0
7NorthApple30
Kliknij komórkę, aby zobaczyć jej formułę. Zmień liczbę albo formułę, a arkusz przeliczy się na nowo.W polskim Excelu: =SUMA.ILOCZYNÓW((A2:A7="North")*C2:C7)

F2 dodaje trzy wiersze North: 230. F3 mnoży dwa warunki, więc wiersz liczy się tylko wtedy, gdy oba są spełnione: 150. Aby liczyć zamiast sumować, pomiń wartości i zamień PRAWDA/FAŁSZ na liczby za pomocą -- (dwóch znaków minus): F4 liczy 3 wiersze North. F6 pokazuje, dlaczego -- ma znaczenie: SUMA.ILOCZYNÓW nie dodaje wartości PRAWDA, więc formuła bez nich zwraca 0.

Pierwsze cztery dają te same wyniki co SUMA.JEŻELI, SUMA.WARUNKÓW i LICZ.JEŻELI. Następna sekcja pokazuje, kiedy SUMA.ILOCZYNÓW jest naprawdę potrzebna.

Warunki, których SUMA.WARUNKÓW nie wyrazi

SUMA.WARUNKÓW porównuje kolumnę ze stałym kryterium. Nie potrafi wziąć miesiąca z daty, porównać dwóch kolumn ze sobą ani pomnożyć ilości przez cenę przed dodaniem. SUMA.ILOCZYNÓW potrafi, bo każdy warunek to zwykłe obliczenie.

Więcej niż SUMA.WARUNKÓW
G2
ABCDEFG
1RegionDateTargetActualFormulaResult
2North2026-01-05100120February sales135
3South2026-01-126045Rows over target3
4North2026-02-039080North or East sales285
5East2026-02-185055Above target by75
6South2026-03-02150200
7North2026-03-204030
Kliknij komórkę, aby zobaczyć jej formułę. Zmień liczbę albo formułę, a arkusz przeliczy się na nowo.W polskim Excelu: =SUMA.ILOCZYNÓW((MIESIĄC(B2:B7)=2)*D2:D7)
  • G2 bierze MIESIĄC (MONTH) z każdej daty i zostawia wiersze z lutego: 80 + 55 = 135. To dodaje luty z każdego roku; dopisz *(ROK(B2:B7)=2026), aby ograniczyć wynik do jednego roku.
  • G3 porównuje dwie kolumny wiersz po wierszu i liczy wiersze, w których Actual przekracza Target.
  • G4 to LUB: dodanie dwóch warunków daje 1, gdy którykolwiek jest spełniony (2, gdy oba, i dlatego jest tam >0). North albo East: 285.
  • G5 dodaje, o ile każdy wiersz przekroczył cel, tylko dla wierszy, które go przekroczyły.

SUMA.ILOCZYNÓW dla sum i średnich ważonych

Ilość razy cena to suma ważona, a można do niej dodać warunki. Ta sama idea podzielona przez sumę wag daje średnią ważoną: =SUMA.ILOCZYNÓW(B2:B6;C2:C6)/SUMA(B2:B6) to średnia cena sprzedanej sztuki.

Przychód według regionu
G2
ABCDEFG
1RegionProductQtyPriceFormulaResult
2NorthApple10$1.20North revenue$31.00
3SouthPear4$1.50All revenue$61.00
4NorthPear6$1.50Average price per item$1.36
5EastApple8$1.20
6SouthApple12$1.20
7NorthPlum5$2.00
Kliknij komórkę, aby zobaczyć jej formułę. Zmień liczbę albo formułę, a arkusz przeliczy się na nowo.W polskim Excelu: =SUMA.ILOCZYNÓW((A2:A7="North")*C2:C7*D2:D7)

North sprzedał 10 jabłek po $1.20, 6 gruszek po $1.50 i 5 śliwek po $2.00, więc G2 pokazuje $31.00. Zwykła średnia cen traktowałaby śliwkę tak, jakby sprzedawała się równie często jak jabłko; G4 waży każdą cenę jej ilością.

Ćwiczenie: przychód z warunkiem

Twoja kolej: przychód South
G2
ABCDEFG
1RegionProductQtyPriceFormulaResult
2NorthApple10$1.20South revenue
3SouthPear4$1.50
4NorthPear6$1.50
5EastApple8$1.20
6SouthApple12$1.20
7NorthPlum5$2.00
Kliknij komórkę, aby zobaczyć jej formułę. Zmień liczbę albo formułę, a arkusz przeliczy się na nowo.

Twoja kolej: Oblicz przychód South: ilość razy cena, tylko dla wierszy South. Wpisz formułę w G2.

SUMA.ILOCZYNÓW a SUMA.WARUNKÓW i dwa typowe błędy

WarunekSUMA.WARUNKÓWSUMA.ILOCZYNÓW
Kolumna równa wartości=SUMA.WARUNKÓW(C2:C7;A2:A7;"North")=SUMA.ILOCZYNÓW((A2:A7="North")*C2:C7)
Zawiera tekst=SUMA.WARUNKÓW(C2:C7;B2:B7;"*app*")=SUMA.ILOCZYNÓW(CZY.LICZBA(SZUKAJ.TEKST("app";B2:B7))*C2:C7)
Miesiąc z datybezpośrednio niemożliwe=SUMA.ILOCZYNÓW((MIESIĄC(B2:B7)=2)*D2:D7)
Kolumna z kolumnąniemożliwe=SUMA.ILOCZYNÓW(--(D2:D7>C2:C7))
Ilość × cenaniemożliwe=SUMA.ILOCZYNÓW(C2:C7;D2:D7)

Wybieraj SUMA.WARUNKÓW zawsze, gdy da radę. Łatwiej ją czytać, jest szybsza na dziesiątkach tysięcy wierszy i przyjmuje całe kolumny. =SUMA.ILOCZYNÓW((A:A="North")*C:C) mnoży ponad milion wierszy i zwraca #ARG!, gdy tylko dojdzie do tekstu nagłówka w C1, więc podawaj SUMA.ILOCZYNÓW dokładne zakresy, na przykład A2:A500.

Dwa błędy, które spotkasz:

  • #ARG! przez zakresy o różnych rozmiarach. =SUMA.ILOCZYNÓW(B2:B6;C2:C7) nie działa. Każdy zakres musi obejmować te same wiersze.
  • #ARG! przez tekst w mnożonym zakresie. Nagłówek albo „n/a” w C2:C7 psuje (A2:A7="North")*C2:C7, bo tekstu nie da się pomnożyć. Zacznij zakres pod nagłówkiem albo podaj wartości jako osobny argument: =SUMA.ILOCZYNÓW(--(A2:A7="North");C2:C7) traktuje tekst w C jako 0.

Najczęściej zadawane pytania

Co robi SUMA.ILOCZYNÓW w Excelu?

Mnoży zakresy wiersz po wierszu i dodaje iloczyny. =SUMA.ILOCZYNÓW(B2:B6;C2:C6) to B2C2 + B3C3 + ... + B6*C6, na przykład ilość razy cena zsumowana w wartość zamówienia.

Jak użyć SUMA.ILOCZYNÓW z warunkiem?

Pomnóż przez porównanie: =SUMA.ILOCZYNÓW((A2:A7="North")*C2:C7) dodaje C2:C7 dla wierszy North. Porównanie daje PRAWDA albo FAŁSZ, które po pomnożeniu stają się 1 albo 0.

Co oznacza -- w SUMA.ILOCZYNÓW?

To dwa znaki minus, które zamieniają PRAWDA i FAŁSZ na 1 i 0. =SUMA.ILOCZYNÓW(--(C2:C7>50)) liczy wartości powyżej 50. Bez nich SUMA.ILOCZYNÓW traktuje PRAWDA/FAŁSZ jako 0 i zwraca 0.

Użyć SUMA.ILOCZYNÓW czy SUMA.WARUNKÓW?

Użyj SUMA.WARUNKÓW, gdy jej kryteria potrafią wyrazić warunek: łatwiej ją czytać i jest szybsza na dużych zakresach. Użyj SUMA.ILOCZYNÓW, gdy warunek wymaga obliczenia, na przykład miesiąca z daty, porównania dwóch kolumn albo ilości razy cena.

Dlaczego SUMA.ILOCZYNÓW zwraca #ARG!?

Zakresy mają różne rozmiary (B2:B6 z C2:C7) albo zakres mnożony przez * zawiera tekst. Niech każdy zakres ma ten sam rozmiar, a zakresy z tekstem podawaj jako osobne argumenty, co traktuje tekst jako 0.

Ilustracja języków programowania w Coddy

Ucz się programowania z Coddy

ZACZNIJ