Supportnet Computer
Planet of Tech

Supportnet / Forum / Tabellenkalkulation

Matrixformel mit mehreren Bedinungen möglich?





Frage

Hallo, habe einen wenn-Abfrage mit mehreren Bedinungen: =WENN(UND(LÄNGE(Quelle!$D6)=18;LINKS(Quelle!$D6;12)=$E4);Quelle!$E6*1;0) Diese Wenn-Formel würde ich jetzt gern in eine Matrixformel mit Summenbildung überführen, dann scheint aber die Wenn-Abfrage nicht mehr zu funktionieren: ={summe(WENN(UND(LÄNGE(Quelle!$D6)=18;LINKS(Quelle!$D6;12)=$E4);Quelle!$E6*1;0))} Kann man das in einer Matrixformel gar nicht machen? - und was gibt es noch für Lösungsansätze? Vielen Dank für Antworten. Gruß Jörg.

Antwort 1 von Saarbauer

Hallo,

mir ist nicht klar wofür du die Matrixformelnutzen willst, da sich alles nur auf die Werte in Zelle D6 und E6 bezieht.

Müsste so funktionieren

=WENN(UND(LÄNGE(Quelle!$D6)=18;LINKS(Quelle!$D6;12)=$E4);Quelle!$E6;0)

Gruß

Helmut

Antwort 2 von jschade

Tschuldigung - stimmt

die Matrixformel bezieht sich natürlich auf eine Bereich:

={summe(WENN(UND(LÄNGE(Quelle!$D6:$D100)=18;LINKS(Quelle!$D6:$D100;12)=$E4);Quelle!$E6:$E100*1;0))}

also:
wenn Länge Wert Spalte D = 18
UND
die ersten 12 Zeichen links mit dem Prüfwert E4 übereinstimmen
DANN
soll er den Wert mit in der Summe berücksichtigen, sonst nicht (=0)

--> dass soll er durch die Matrixformel nach und nach in den Zeilen
6 bis 100 durchführen.

Ich hoffe, jetzt ist es deutlicher?

Gruß

Jörg.

Antwort 3 von rainberg

Hallo Jörg,

versuchs mal so.

=SUMMENPRODUKT((LÄNGE(Quelle!$D6:$D100)=18)*(LINKS(Quelle!$D6:$D100;12)=$E4)*(Quelle!$E6:$E100))

Gruß
Rainer

Antwort 4 von Saarbauer

Hallo,

die Lösung von @rainberg jätte ich dir auch angeboten.

Gruß

Helmut

Antwort 5 von jschade

Hallo Rainer und Helmut,

Eure Lösung verstehe ich nicht - ich will doch eine Summe bilden???

Wäre da nicht Summewenn die richtige Funktion?

Das Zeichen "*" verbindet doch die Argumente logisch mit "UND" - gibt es denn auch eine logischen Verbindung mit "ODER" - so wie bei meinem Beispiel =wenn(und.......) bzw. bei der Verwendung von =wenn(oder(...)?

Werde heute leider keine Zeit haben, das Problem weiter zu verfolgen.
Bis morgen und danke schonmal für die Anregungen.

Gruß

Jörg.

Antwort 6 von rainberg

Hallo Jörg,

hast Du die Formel ausprobiert?

Sie bildet die Summe aus den Zeilen des Bereiches E6:E100 der Arbeitsmappe Quelle, deren Kriterien in Spalte D zutreffen.

SUMMEWENN() kannst Du bis Version 2003 nicht verwenden, in Version 2007 könntest Du SUMMEWENNS() verwenden.

Welche Werte stehen denn in Spalte D und welcher Wert in E4?

Gruß
Rainer

Antwort 7 von jschade

Guten Morgen,

habe es jetzt mit der guten alten Matrixformel hinbekommen:
={summe(WENN(LÄNGE(Quelle!$D6:$D100)=18;wenn(LINKS(Quelle!$D6:$D100;12)=$E4);wenn(Quelle!$E6:$E100*1;0);0);0)}

Ich muss halt eine Spalten nach Werten durchsuchen, wenn vorher bestimmte Kriterien erfüllt sind und da ich immer noch nicht weiß, wie ich bei Summewenn mehrere Kriterien angeben kann, ist doch o.g. Lösung ganz annehmbar, oder?

Gruß und nochmal danke.

Jörg.

Antwort 8 von jschade

Anmerkung:

...... eine gute Frage wäre noch bei welcher Funktion die Performance höher ist
- Matrixformel mit summe(wenn......
- SummeProdukt(....

Jörg.

Antwort 9 von Saarbauer

Hallo,

deine Formel

={summe(WENN(LÄNGE(Quelle!$D6:$D100)=18;wenn(LINKS(Quelle!$D6:$D100;12)=$E4);wenn(Quelle!$E6:$E100*1;0);0);0)}

bewirkt das gleiche wie die Formel von @rainberg

=SUMMENPRODUKT((LÄNGE(Quelle!$D6:$D100)=18)*(LINKS(Quelle!$D6:$D100;12)=$E4)*(Quelle!$E6:$E100))

beides sind Matrixformeln, der einzige Unterschied ist, dass Summenprodukt ein Bestandteil der festen Formeln ist

Gruß

Helmut

Ich möchte kostenlos eine Frage an die Mitglieder stellen:


Ähnliche Themen:


Suche in allen vorhandenen Beiträgen: