Microsoft Excel

Das Portal zum Thema Excel-Formeln

Gruppe: Listen/Datensätze - BEITRAG: Nach welcher Spalte ist eine Liste sortiert


Aufgabe
In einer Liste mit vielen Spalten, soll geprüft werden, ob diese Liste nach einer Spalte sortiert wurde. Wenn ja, nach welcher.


Lösung
Listenbereich von A1:J50

Kommen im Bereich keine Leerzellen vor, dann:
{=VERGLEICH(ZEILEN(A2:A50);MMULT(MTRANS((A2:J50>=A1:J49)*1);WENN(ZEILE(1:49);1));0)}
Liefert die Spaltennummer der sortierten Spalte. Liefert #NV, wenn keine Spalte sortiert ist.

Können auch Leerzellen vorkommen, dann:
{=VERGLEICH(ZEILEN(A2:A50);MMULT(MTRANS((WENN(A2:J50<>"";A2:J50;ZEICHEN(158))>=WENN(A1:J49<>"";A1:J49;ZEICHEN(158)))*1);WENN(ZEILE(1:49);1));0)}

(Zeichen 158 des Ansi-Codes kommt in der Sortierung an letzter Stelle. Leerzellen werden damit ersetzt.)

Hinweis:
Stehen in Zeile 1 Überschriften, die ignoriert werden sollen, muß überall der Anfangsbezug um 1 erhöht werden: A1 auf A2; A2 auf A3 und ZEILE(1:49) auf ZEILE(2:50).
Soll nach einer absteigend sortierten Spalte gesucht werden, muß in der ersten Formel >= durch <= ersetzt werden. Diese funktioniert dann auch mit Leerzellen.