Herbers Excel-Forum - das Archiv

summewenn mit mehreren Abfragen

Bild

Betrifft: summewenn mit mehreren Abfragen
von: Berthold Grabe

Geschrieben am: 24.02.2005 13:04:30
Ans Forum,
da zu o.g. Thema immer wieder Anfrage auftauchen, ich selbst ebenfalls nach einer einfachen Lösung gesucht und nicht gefunden habe, möchte ich hier meine Lösung zur Verfügung stellen:
Function Summe2Wenn(Bed1 As Range, Bed2 As Range, Suche1, Suche2, Werte As Range)
'summiert Werte in Abhängigkeit von 2 Bedingungen mittels Durchsuchung von 2 Spalten
Dim Anzahl As Integer, i As Integer
Dim Summe As Single
Summe = 0
Anzahl = Bed1.Cells.Count
For i = 1 To Anzahl
If Bed1(i).Value = Suche1 And Bed2(i).Value = Suche2 Then
Summe = Summe + Werte(i).Value
End If
Next i
Summe2Wenn = Summe
End Function

Die Funktion sucht je einen Wert in je einer Bed. Spalte heraus, bei Erfüllung beider Bedingungen wird der entsprechende Wert der dritten Spalte summiert.
Berthold Grabe
Bild

Betrifft: AW: summewenn mit mehreren Abfragen
von: Boris

Geschrieben am: 24.02.2005 13:52:45
Hi Berthold,
...ich selbst ebenfalls nach einer einfachen Lösung gesucht und nicht gefunden habe...
Diese Lösung gehört doch fast schon zu Standard:
=SUMMENPRODUKT((A1:A100="x")*(B1:B100="y")*C1:C100)
Summiert Spalte C, wenn Spalte A="x" und B="y".
Und dürfte - auch wenn jede Zeile innerhalb des Arrays einzeln berechnet wird - um einiges flotter sein als eine For-Next-Schleife.
Grüße Boris
Bild

Betrifft: AW: summewenn mit mehreren Abfragen
von: Berthold Grabe
Geschrieben am: 26.02.2005 12:42:10
Hallo Boris,
danke für die Lösung, erste mal, dass ich eine Erklärung zum Summenprodukt auch verstanden habe.
Meine Lösung scheint mir zwar leichter nachvollziehbar, die andere benötigt jedoch keine Programmierung
Gruß
Berthold
Bild

Betrifft: AW: summewenn mit mehreren Abfragen
von: Dennis

Geschrieben am: 28.02.2005 09:46:36
Hallo an alle!
Hallo Boris
Wenn ich diese Formel verwende wird bei mir immer #Zahl angezeigt.
Hier meine Abwandlung: =SUMMENPRODUKT((Leistung!A:A=35)*(Leistung!I:I=50103)*Leistung!M:M) oder =SUMMENPRODUKT((Leistung!A:A="35")*(Leistung!I:I=B45)*Leistung!M:M)
wobei das zweite mit dem Bezug besser ist. Ich habe es auch mit "" usw. probiert. Es steht immer #Zahl in dem Feld. Ich frage mich wo keine Zahl stehen soll.
Was mache ich Falsch?
 Bild
Excel-Beispiele zum Thema "summewenn mit mehreren Abfragen"
Beispiel für die Anwendung der SUMMEWENN-FORMEL SUMMEWENN-Funktion über mehrere Tabellenblätter
SummeWenn-Summierung über mehrere Blätter Druck aus mehreren Tabellenblättern auf eine Druckseite
Daten von mehreren Blättern auf ein Druckblatt Werte in mehreren Spalten sortieren
Den selben Bereichsnamen in mehreren Tabellenblättern Tabelle nach mehreren Kriterien summieren
Auswahl von Zellen in mehreren Zeilen verhinden Wert von einer Zelle zur anderen in mehreren Tabellen übernehmen