Alphabetische Sortierung mit dem Summenprodukt

Antworten
Benutzeravatar
FKD
Foren-Junkie
Foren-Junkie
Beiträge: 285
Registriert: 27.09.2008 16:13
Name: Florian Karl-David
Ausbildungsort: Bayreuth
Ausbildungsjahr: 2001
Wohnort: Pottenstein

Alphabetische Sortierung mit dem Summenprodukt

Beitrag von FKD »

Ich hab mich jetzt mal mit der Funktion Summenprodukt und der hier im Forum schon einmal erwähnten Sortierformel ein bißchen beschäftigt.

Als Beispieltabelle hab ich in der Spalte A einfach die Buchstaben A bis J untereinander geschrieben.

Meine Ausgangsformel lautet:

Code: Alles auswählen

= SUMMENPRODUKT (( $A$1 : $A$10 < A1 ) + ( A1 = "" ) * 1000 )
Als Ergebnis werden die Werte mit einer Rangfolge von 0 bis 9 bewertet.

Lösche ich einzelne Zellen in meiner Beispieltabelle, dann liefert die Formel in der betreffenden Zeile den Wert 10.000 als Ergebnis. Änder ich die 1.000 in der Formel auf 11, dann erscheint 110 als Ergebnis. Der Part (A1 = "" ) * 1000 sorgt also dafür, dass leere Zellen an das Ende der Rangfolge gestellt werden.

Fehlt allerdings dieser Teil komplett, dann liefert er als Ergebnis in allen Zellen 0. Also hab ich ein bißchen was ausprobiert und bin dabei auf folgende Lösung für das Problem gestoßen:

Code: Alles auswählen

= SUMMENPRODUKT (( $A$1 : $A$10 < A1 ) + 0 )
In der vollständigen Beispieltabelle wird wieder die bekannte Rangfolge von 0 bis 9 ausgegeben. Lösche ich einen einzelnen Wert, dann erhalte ich in der betreffenden Zeile den Wert 0. Lösche ich zwei Werte, dann beginnt die restliche Rangfolge mit dem Wert 2.

Der Teil ( $A$1 : $A$10 < A1 ) zählt vermutlich die Zellen aus dem Bereich $A$1 : $A$10, deren "Wert" kleiner ist als A1. Diese Vermutung wird auch bestätigt, wenn man in die Spalte A mehrere gleiche Werte/Buchstaben/Wörter einträgt. Warum oder wie das genau funktioniert, weiß ich leider nicht.

Als nächstes habe ich versucht den Sinn hinter dem + 0 zu entziffern:

Code: Alles auswählen

= SUMMENPRODUKT (( $A$1 : $A$10 < A1 ) + [b]X[/b] )
Wenn ich für das X einen beliebigen Wert einsetze, erhalte ich als Ergebnis X * 10 + Rangfolge.

Code: Alles auswählen

= SUMMENPRODUKT (( $A$1 : $A$10 < A1 ) * [b]X[/b] )
Ergebnis: Die Rangfolge wird mit X multipliziert.

Ich hoffe, ihr seid jetzt endgültig verwirrt :D
Die Basis einer gesunden Ordnung ist ein großer Papierkorb.
Kurt Tucholsky (1890-1935)
Antworten

Zurück zu „Tabellenkalkulation“