Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1428to1432
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
SUMMEWENN mit Bedingungen
06.06.2015 08:52:19
Claus
Hallo zusammen,
kann mir hier einer helfen? Ich denke, ich bin mit der SUMMEWENN und die Fällen, die ich als Bedingungen benötige, auf dem Holzweg. Vielleicht tut es ein IndexVergleich? Jedenfalls komme ich nicht weiter.
Im Anhang habe ich die auszuwertenden Fälle näher beschrieben. Wäre toll, wenn sich jemand dieser Aufgabe annehmen könnte. Ich bin am Ende.
https://www.herber.de/bbs/user/98058.xlsx
Vielen Dank
Claus

26
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: SUMMEWENN mit Bedingungen
06.06.2015 09:05:33
Sepp
Hallo Claus,
Tabelle2

 ABCDEFGHIJ
4BA  11.704    51472,86d. Summe aus Spalte C für alle C Teile aus Spalte A    
5BA    6.628          
6AC    5.805          
7AB    9.605          
8BB    2.686          
9AA  11.124          
10BB    1.643          
11BB    1.911          
12CA  42.948          
13CA    8.524          
14          

Formeln der Tabelle
ZelleFormel
E4=SUMMEWENN(A4:A13;"C";C4:C13)

Bedingte Formatierungen der Tabelle
ZelleNr.: / BedingungFormat


Excel Tabellen im Web darstellen >> Excel Jeanie HTML 4
aber ist das wirklich dein Problem?
Gruß Sepp

Anzeige
AW: SUMMEWENN mit Bedingungen
06.06.2015 09:21:03
Claus
Danke Sepp, ich denke, dass das noch der einfachere Fall der vier im Anhang gezeigten war. Allerdings scheitere ich total an diesem hier:
c. Summe aus Spalte C für alle B-Teile aus Spalte A, WENN diese in Spalte B als A ODER B gekennzeichnet sind

Falschen Ausschnitt hochgeladen!
06.06.2015 09:17:59
Sepp
Tabelle2

 ABCDEFGHIJKLMNO
1Klassifikation 1Klassifikation 2 Zähler    93.818,00    a. Summe aus Spalte C für alle A Teile aus Spalte A        
2AA  57.984,00        6.240,00    b. Summe aus Spalte C für alle B Teile aus Spalte A, WENN diese in Spalte B als B gekennzeichnet sind        
3AA    9.300,00      24.572,00    c. Summe aus Spalte C für alle B-Teile aus Spalte A, WENN diese in Spalte B als A ODER B gekennzeichnet sind        
4BA  11.704,00      51.472,86    d. Summe aus Spalte C für alle C Teile aus Spalte A        
5BA    6.628,00               
6AC    5.805,00               
7AB    9.605,00               
8BB    2.686,00               
9AA  11.124,00               
10BB    1.643,00               
11BB    1.911,00               
12CA  42.948,46               
13CA    8.524,40               
14               
15               

Formeln der Tabelle
ZelleFormel
E1=SUMMEWENN($A$2:$A$13;"A";$C$2:$C$13)
E2=SUMMENPRODUKT(($A$2:$A$13="B")*($B$2:$B$13="B")*$C$2:$C$13)
E3=SUMMENPRODUKT(($A$2:$A$13="B")*(($B$2:$B$13="A")+($B$2:$B$13="B"))*$C$2:$C$13)
E4=SUMMEWENN($A$2:$A$13;"C";$C$2:$C$13)

Bedingte Formatierungen der Tabelle
ZelleNr.: / BedingungFormat


Excel Tabellen im Web darstellen >> Excel Jeanie HTML 4
Gruß Sepp

Anzeige
AW: SUMMEWENN mit Bedingungen
06.06.2015 09:26:05
RPP63
Hallo!
Für die Bedingungen a, b und d wie folgt:
(Ich habe B10 geändert, sonst wäre Deine Bedingung c nicht darstellbar!)
Tabelle2

 ABCDEF
1Klassifikation 1Klassifikation 2Zähler   93.818,00   a. Summe aus Spalte C für alle A Teile aus Spalte A
2AA  57.984,00        4.597,00   b. Summe aus Spalte C für alle B Teile aus Spalte A, WENN diese in Spalte B als B gekennzeichnet sind
3AA    9.300,00     c. Summe aus Spalte C für alle B-Teile aus Spalte A, WENN diese in Spalte B als A ODER B gekennzeichnet sind
4BA  11.704,00      51.472,86   d. Summe aus Spalte C für alle C Teile aus Spalte A
5BA    6.628,00      
6AC    5.805,00      
7AB    9.605,00      
8BB    2.686,00      
9AA  11.124,00      
10BC    1.643,00      
11BB    1.911,00      
12CA  42.948,46      
13CA    8.524,40      

Formeln der Tabelle
ZelleFormel
E1=SUMMEWENN(A:A;"A";C:C)
E2=SUMMEWENNS(C:C;A:A;"B";B:B;"B")
E4=SUMMEWENN(A:A;"C";C:C)


Excel Tabellen im Web darstellen >> Excel Jeanie HTML 4.8
Für Bedingung d musst Du Dir einen Kriterienbereich erstellen:
Tabelle2

 GHI
1Klassifikation 1Klassifikation 2Summe
2BA  22.929,00  
3BB 

Formeln der Tabelle
ZelleFormel
I2=DBSUMME(A:C;3;G1:H3)


Excel Tabellen im Web darstellen >> Excel Jeanie HTML 4.8
Gruß Ralf

Anzeige
Alternative
06.06.2015 10:04:38
RPP63
Ich benutze immer SUMMEWENN, SUMMEWENNS oder DBSUMME, weil sie
1. sehr schnell sind
2. ganze Spalten in der Formel zulassen.
Alternativ zu DBSUMME (die wohl ein Mauerblümchendasein fristet), kannst Du für die ODER-Bedingung natürlich auch die Summe aus SUMMEWENNS nutzen:
Tabelle2

 ABCDEF
1Klassifikation 1Klassifikation 2Zähler       93.818   a. Summe aus Spalte C für alle A Teile aus Spalte A
2AA  57.984            4.597   b. Summe aus Spalte C für alle B Teile aus Spalte A, WENN diese in Spalte B als B gekennzeichnet sind
3AA    9.300          22.929   c. Summe aus Spalte C für alle B-Teile aus Spalte A, WENN diese in Spalte B als A ODER B gekennzeichnet sind
4BA  11.704          51.473   d. Summe aus Spalte C für alle C Teile aus Spalte A
5BA    6.628      
6AC    5.805      
7AB    9.605      
8BB    2.686      
9AA  11.124      
10BC    1.643      
11BB    1.911      
12CA  42.948      
13CA    8.524      

Formeln der Tabelle
ZelleFormel
E1=SUMMEWENN(A:A;"A";C:C)
E2=SUMMEWENNS(C:C;A:A;"B";B:B;"B")
E3=SUMMEWENNS(C:C;A:A;"B";B:B;"A")+SUMMEWENNS(C:C;A:A;"B";B:B;"B")
E4=SUMMEWENN(A:A;"C";C:C)


Excel Tabellen im Web darstellen >> Excel Jeanie HTML 4.8
Gruß Ralf

Anzeige
AW: SUMMEWENN mit Bedingungen
06.06.2015 10:06:08
Claus
Super! SUMMEWENNS ist die Lösung.
Danke und ein schönes Wochenende
Claus

AW: SUMMEWENN mit Bedingungen
06.06.2015 11:39:45
Claus
Hallo zusammen,
der dritte Fall "c. Summe aus Spalte C für alle B-Teile aus Spalte A, WENN diese in Spalte B als A ODER B gekennzeichnet sind" ist noch nicht ganz gelöst. Gibt es eine andere Möglichkeit als die DBSumme?
Ich bekomme die Formel nicht in meinen konkreten Fall übersetzt - obgleich die in Ralfs Beispiel perfekt funktioniert.
Danke und Gruß
Claus

Meine zweite Lösung angesehen? o.T.
06.06.2015 11:41:25
Sepp
Gruß Sepp

Anzeige
AW: SUMMEWENN mit Bedingungen
06.06.2015 11:55:03
Claus
Die ANZAHL der Fälle bekomme ich mit dieser Formel bereits hin:
=SUMME((SUMMENPRODUKT((A:A="B")*(B:B="A")))+(SUMMENPRODUKT((A:A="B")*(B:B="B"))))
Nur fehlt mir jetzt die Verlinkung zu Spalte C...

AW: SUMMEWENN mit Bedingungen
06.06.2015 11:58:55
Sepp
Hallo Claus,
du schaust dir die gebotenen Lösungen aber schon an, oder?
Tabelle2

 ABCDE
1Klassifikation 1Klassifikation 2 Zähler    93.818,00  
2AA  57.984,00        6.240,00  
3AA    9.300,00      24.572,00  
4BA  11.704,00      51.472,86  
5BA    6.628,00     
6AC    5.805,00     
7AB    9.605,00     
8BB    2.686,00     
9AA  11.124,00     
10BB    1.643,00     
11BB    1.911,00     
12CA  42.948,46     
13CA    8.524,40     

Formeln der Tabelle
ZelleFormel
E1=SUMMEWENN($A$2:$A$13;"A";$C$2:$C$13)
E2=SUMMENPRODUKT(($A$2:$A$13="B")*($B$2:$B$13="B")*$C$2:$C$13)
E3=SUMMENPRODUKT(($A$2:$A$13="B")*(($B$2:$B$13="A")+($B$2:$B$13="B"))*$C$2:$C$13)
E4=SUMMEWENN($A$2:$A$13;"C";$C$2:$C$13)

Bedingte Formatierungen der Tabelle
ZelleNr.: / BedingungFormat


Excel Tabellen im Web darstellen >> Excel Jeanie HTML 4
Gruß Sepp

Anzeige
AW: SUMMEWENN mit Bedingungen
06.06.2015 12:11:04
Claus
Danke Sepp, jetzt habe ich alles. Ich hatte das mit der DBSumme von Ralf probiert, aber nicht umgestrickt bekommen.
GRuß
Claus

Dennoch ...
06.06.2015 14:28:40
RPP63
... Sepp!
So gut ich Summenprodukt() finde, vermeide ich es wo immer es geht!
Die Begründung findest Du in diesem Thread, denn MS dachte irgendwann mal, dass der UsedRange gerade bei Matrix-Funktionen ( nicht -Formeln) Sinn macht!
Gruß Ralf

das ist dir unbenommen! o.T.
06.06.2015 14:29:58
Sepp
Gruß Sepp

Mit Text!
06.06.2015 14:55:56
RPP63
Hi Sepp!
Ich finde, dass manche Foren auf dem Stand von 1995 stehen blieben.
Es ist absolut korrekt, dass "alte" Lösungen ein Ergebnis liefern.
Ich habe das "Glück", mich erst im "hohen Alter" mit Formellösungen befasst zu haben, da ich vorher dem Götzen VBA gefrönt hatte.
"Glück" deshalb, weil ich deshalb auch "neue" Funktionen kennenlernen durfte:
Wer kennt schon z.B. AGGREGAT()?
Gruß Ralf

Anzeige
Na wer ? der neopa C zB. ;-) owT Gruß
06.06.2015 14:59:26
robert

AW: Mit Text!
06.06.2015 15:25:27
Daniel
Hi
naja, nicht die Foren, sonden die Menschen die hier antworten.
btw Aggregat hat meiner Ansicht nach gerade für Anfänger den grossen Nachteil, dass es die eigentliche Funktion hinter einer Nummer versteckt und damit Formeln mit Aggregat nicht selbsterklärend sind.
Gruß Daniel

AW: Mit Text!
06.06.2015 15:28:48
Sepp
Hallo Ralf,
ich habe nichts gegen die "neuen" Funktionen, sehe aber nur sehr selten einen Vorteil gegenüber den "alten" Lösungen. Dazu kommt der Nachteil, das die "neuen" eben nur auf den neueren XL-Versionen laufen, die "alten" laufen auf praktisch in jeder Version ab xl97.
Gruß Sepp

Anzeige
Grundsatzdiskussion?
06.06.2015 15:05:30
RPP63
Man sollte sich mittlerweile fragen, ob "althergebrachte" Lösungen nur deshalb richtig sind, weil sie es mal waren.?!
Vllt. ergibt sich eine fruchtbare Diskussion?
Gruß Ralf

AW: Grundsatzdiskussion?
06.06.2015 15:31:25
Sepp
Hallo Ralf,
meine einzige Antwort zu dieser "Diskusion".
Wenn etwas richtig ist, dann bleibt es richtig, auch wenn es auf Grund von neuen Funktionen andere Lösungen gibt.
Gruß Sepp

Also WENN(ISTFEHLER()) = WENNFEHLER()
06.06.2015 15:40:04
RPP63
Nein, Sepp,
man darf auch mal über seinen Schatten springen!
Ich habe einige ältere Funktionen enorm beschleunigen können!
SUMMENPRODUKT() gehört definitiv dazu!
Gruß Ralf

Anzeige
AGGREGAT() ist zwar sehr vielseitig, aber ...
06.06.2015 17:34:38
der
Hallo Ralf,
... AGGREGAT() ist keine eierlegende Wollmichsau und wird es wohl auch die nächste Zeit nicht sein. AGGREGAT() ist trotzdem sehr vielseitig wie leistungsfähig.
Vor allem die Matrixfunktionalität dieser Funktion, ist im Zusammenspiel mit INDEX() und oder VERWEIS() und WENNFEHLER() (welche es aber auch erst ab XL2007 gibt) sicherlich ein sehr großer Faustpfand und hat es mir deshalb auch angetan. Mit ihr könnte man sehr viele, wahrscheinlich wohl die meisten Matrixformeln ersetzen. Dies nicht um die Fingerakrobatik beim Eingeben der Matrixformeln einzusparen, sondern sie sind nach meinen derzeitigen Erkenntnissen auch meist schneller in der Auswertung als die entsprechende klassischen Matrixformeln (echte Tests dazu habe ich allerdings bisher nicht gefahren)
Jedoch ist diese Funktion (erst ab XL2010 überhaupt nutzbar) aus meiner Sicht von ihren Programmierern leider nicht konsequent in ihren bereitgestellten Funktionalitäten.
So z.B. ist die Matrixfunktionaltät nur auf einige Standardfunktionalitäten (dazu siehe MS-Hilfe) zugeschnitten und u.a. die Summenbildung ist, warum auch immer, z.B. diesbzgl. leider nicht berücksichtigt.
Es gibt noch anderes was ich zu AGGREGAT() als noch "fehlende" Funktionalität festgestellt habe (zumindest für mich). Ohne jetzt und hier im Detail darauf weiter einzugehen, gehören dazu unverständlicherweise auch Teilfunktionalitäten, für die die Funktion eigentlich als Haupteinsatz angedacht war (Berücksichtigung/Nicht- von ausgefilterten/ausgeblendeten Daten).
Die Funktion AGGREGAT() wird momentan SUMMENPRODUKT() nie ersetzen. SUMMEWENNS(), welche es aber auch erst seit XL2007 gibt, kann dies zumindest teilweise schon viele besser. Sie hat aber gegenüber SUMMENPRODUKT() und erst Recht gegenüber {=SUMME(WENN(..)..)} den Nachteil, dass sie für bestimmte Ermittlungen nicht wirklich geeignet ist. Allerdings ist sie, wenn einsetzbar, wesentlich schneller in der Auswertung. Und eine SUMMENPRODUKT()-Formel ist schon schneller in der Auswertung als eine MATRIXFormel ala{=SUMME(WENN(..)..)}.
Schnell/schneller, zumindest für Massendaten ist möglicherweise eine Lösung mit db-Formeln. Doch diese hat MS vom Anwendungshändling her leider vernachlässigt und spielen wohl deshalb, wie bereits geschrieben, nur noch ein Schattendasein. Na und dann gibt es ja auch noch die PIVOTauwertung und PowerPIVOTauwertung. Diesbzgl. würde ich nun keinesfalls auf die Neuerungen in XL2010, gegenüber meiner XL2002-Vorgängerversion verzichten wollen.
Nun noch konkret zur Formel 3 hier im Thread.
Die SUMMENPRODUKT()-Formel von Sepp liefert ein korrektes Ergebnis. Und wenn einem so eine Lösung als erste eingefallen ist, warum soll man diese dann nicht anwenden? Auch wenn die SUMMEWENNS()-Formel schneller in der Auswertung ist, dann spielt dies bei wenigen Datensätzen nun wirklich keine Rolle. Anders würde das aus bei hunderten/tausenden Datensätzen aussehen. Da wäre es gut, sich an die neueren Funktionalitäten zu erinnern.
Eine AGGREGAT()-Formellösung wäre hier zwar theoretisch auch möglich, aber man muss erstens Umwege über z.B. INDEX() in Kauf nehmen, um ohne zusätzliche SUMMENPRODUKT bzw. ohne {} zum Ergebnis zu gelangen und zweitens ist diese trotzdem langsamer in der Auswertung als die SUMMEWENNS()-Formel.
Zu der folgenden (verkürzter) SUMMENPRODUKT()-Formelmöglichkeit:
=SUMMENPRODUKT(($A$2:$A$99="B")*($B$2:$B$99={"A"."B"})*$C$2:$C$99) finde ich aber momentan leider kein ähnliches Äquivalent mit SUMMEWENNS() . Eine Formel wie =SUMMEWENNS(C1:C19;A1:A19;"B";B1:B19;{"A"."B"}) würde natürlich einen falschen Ergebniswert liefern.
Ergo muss man wie hier von Dir eingestellt, zweimal SUMMEWENNS() einsetzen. Dies ist hier im Beispiel kein Problem. Doch was aber, wenn anstelle zwei viele notwendig würden? Dann greife ich doch lieber wieder zum altbekannten SUMMENPRODUKT().
Abschließend nun noch, wie man dies mit einer AGGREGAT()-Formel ohne SUMMENPRODUKT() bzw. ohne {}-"Klammerung" lösen könnte (ich es aber so nie lösen würde; siehe oben).
=SUMME(INDEX(AGGREGAT(14;6;(A1:A99="B")*(B1:B99={"A"."B"})*C1:C99;ZEILE(A1:A99));))
Mein Fazit: Man sollte mit der Zeit gehen, sich aber nicht nur von Neuen leiten lassen. Nur die richtige Mischung zwischen Neuen und Bewährten kann das Optimum ergeben. Bleibt natürlich immer die Frage offen, wie findet man die richtige Mischung ;-)
Gruß Werner
.. , - ...

Was sind denn althergebrachte Lösungen, ...
07.06.2015 04:23:32
Luc:-?
…Leute?
IdR basieren sie auf von den Xl-Entwicklern geschriebenen Fktt, die heute noch iaR so fktionieren wie damals. Die EDV-Grundlagen sind immer noch dieselben, nur die Einsatz­Möglichkeiten haben sich vervielfacht. Nur wenige neue Fktt können das, was die ganz alten vermögen. Manche sind einfach nur Erweiterungen später hinzugefügter, nicht-universeller Fktt, die zwar schneller sein können, das aber auf Kosten ihrer Einsetzbarkeit. U.a. fällt auch TEILERGEBNIS darunter, wozu AGGREGAT nicht nur eine Erweiterung ist, wie zB SUMMEWENNS zu SUMMEWENN, sondern tatsächlich universeller gestaltet wurde, obwohl die FktsNummerierung an TEILERGEBNIS erinnert.
Dass das auch anders geht, Werner,
liegt dir bereits in Form einer UDF vor, der man neben Nrn auch Fktsnamen übergeben kann. VBA erlaubt das und VC, C++ bzw C# sicher auch. Aber für die Pgmierung ist das ein (mitunter kleiner) zusätzlicher Aufwand, den man von unter Termindruck stehenden Leuten nicht unbedingt erwarten darf. Schon deshalb ist jede Fkt, egal ob Standard oder UDF, nur so gut wie ihr Pgmierer und enthält nur das, woran der gedacht hat. Manchmal geht anscheinend mehr, aber das ist eher bei den ganz alten Fktt der Fall.
Was Anderes sind Limitationen, die nicht mehr erforderlich wären. Aber die zu erweitern, sind wohl Arbeiten, mit denen man keine Meriten verdienen kann. Also wird's dann oft so bleiben wie es ist.
Gruß + schöSo, Luc :-?

AW: , Erstmal ins normale Deutsch übertragen,
07.06.2015 18:04:01
Daniel
Was sind denn althergebrachte Lösungen Leute?
IdR basieren sie auf von den Excel-Entwicklern geschriebenen Funktionen, die heute noch iaR so funktionieren wie damals. Die EDV-Grundlagen sind immer noch dieselben, nur die Einsatz­möglichkeiten haben sich vervielfacht. Nur wenige neue Funktionen können das, was die ganz alten vermögen. Manche sind einfach nur Erweiterungen später hinzugefügter, nicht-universeller Funktionen, die zwar schneller sein können, das aber auf Kosten ihrer Einsetzbarkeit. U.a. fällt auch TEILERGEBNIS darunter, wozu AGGREGAT nicht nur eine Erweiterung ist, wie zB SUMMEWENNS zu SUMMEWENN, sondern tatsächlich universeller gestaltet wurde, obwohl die Funktionsnummerierung an TEILERGEBNIS erinnert.
Dass das auch anders geht, Werner,
liegt dir bereits in Form einer UDF vor, der man neben Nummern auch Funktionsnamen übergeben kann. VBA erlaubt das und VC, C++ bzw C# sicher auch. Aber für die Programmierung ist das ein (mitunter kleiner) zusätzlicher Aufwand, den man von unter Termindruck stehenden Leuten nicht unbedingt erwarten darf. Schon deshalb ist jede Funktion, egal ob Standard oder UDF, nur so gut wie ihr Programmierer und enthält nur das, woran der gedacht hat. Manchmal geht anscheinend mehr, aber das ist eher bei den ganz alten Funktionen der Fall.
Was Anderes sind Limitationen, die nicht mehr erforderlich wären. Aber die zu erweitern, sind wohl Arbeiten, mit denen man keine Meriten verdienen kann. Also wird's dann oft so bleiben wie es ist.
Gruß + schönen Sonntag, Luc :-?

Ich benötige keinen Dolmetscher und Werner ...
08.06.2015 01:32:15
Luc:-?
…auch nicht, Daniel;
oder meinst du, mein Beitrag sei so wichtig, dass die 3-4 Abkürzungen unbedingt in Langform dargestellt wdn müssten, damit sie auch noch der Letzte versteht…?
Wohl lange Weile gehabt und nichts Eigenes eingefallen…
Übrigens, Luc ist auch eine, noch dazu fremd-orthografische Abkürzung… ;-]
Luc :-?

AW: Ich benötige keinen Dolmetscher und Werner ...
08.06.2015 02:19:14
Daniel
sollte es nicht unser Ziel sein, unsere Forumsbeiträge so zu formulieren, dass sie alle Leser verstehen können?
Sind wir so ein elitärer Kreis, dass wir Personen ausschließen wollen?
Luc ist hier im Forum dein Name, den du dir gewählt hast, obs ne Abkürzung ist oder nicht, ist egal.
Gruß Daniel

Achgottchen, 'Fkt', noch aus Schulzeiten ...
09.06.2015 17:30:34
Luc:-?
…bekannt, ist „elitär“! Wie schätzt du bloß unsere „Kundschaft“ ein! Aus „elitär-abgehobener“ Position…? :-]
Außerdem hat Ralf hier ja eine Diskussion unter Fachleuten anfangen wollen. Darauf habe ich geantwortet!
Frage an den Sender Jerewan on Herber:
Hier oben wuselt dauernd was rum, ist das gefährlich?
Antwort:
Im Prinzip ja, aber 1. ist das unten im Forum und 2. ist das nur der Daniel, unser Forumsfaktotum!

Luc :-?

327 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige