Excel 2007: Ausgabe von Werten nach einem Kriterium ohne Leerzeichen?

... komplette Frage anzeigen

4 Antworten

Ich hätte auch zu einem Filter geraten.

Als Alternative dazu:
die Tabelle einfach nach B sortieren. Dann hast du die Leerzeilen alle hinten dran (bei entsprechender Sortierreihenfolge) und vorne die von dir gewünschte Liste.

Antwort bewerten Vielen Dank für Deine Bewertung

Einfachster Weg: Der übliche Filter - den mit Formeln oder Makros zu ersetzen ist oft so umständlich, dass man das gut überlegen sollte.

Sonst wäre Pivottabelle noch eine Variante, wenn es bei der einen Spalte bleibt, die angezeigt werden soll (s. Bild).

Per Formel ist das eine knifflige Sache:
http://www.at-exceltraining.de/index.php/fragen-a-anworten-zu-excel/49-formeln-und-funktionen/179-sverweis-mit-mehreren-suchergebnissen.html

mit Excel 2007 ist die zweite Formel notwendig. Spalte A und B bei Dir allerdings umgekehrt und ein fester Suchwert X, in etwa so also:

=WENN(ISTFEHLER(INDEX($A$2:$A$14;KGRÖSSTE(($B$2:$B$14="X")*(ZEILE($B$2:$B$14)-1);ZÄHLENWENN($B$2:$B$14;"X")+1-ZEILE(A1))));"";INDEX($A$2:$A$14;KGRÖSSTE(($B$2:$B$14="X")*(ZEILE($A$2:$A$14)-1);ZÄHLENWENN($B$2:$B$14;"X")+1-ZEILE(A1))))

an die Eingabe von STRG+SHIFT+Enter denken wegen Matrixformel

Antwort bewerten Vielen Dank für Deine Bewertung

In XYZ1 diese Formel und runterkopieren, soweit wie nötig:

{=WENNFEHLER(INDEX($A$1:$A$10;KKLEINSTE(WENN($B$1:$B$10="X";ZEILE($B$1:$B$10));ZEILE(A1)));"")}

**ACHTUNG!**
Das ist eine Matrixformel.
Das bedeutet: Die geschweiften Klammern {} NICHT mit eingeben, sondern die Eingabe der Formel NICHT mit ENTER abschließen, sondern mit:
STRG & SHIFT & ENTER (alle drei gleichzeitig).
DAS erzeugt die { } und macht die Formel zu einer Matrixformel.

Klappt es?

Antwort bewerten Vielen Dank für Deine Bewertung

in einer Zelle der 1. Zeile, dann runterziehen

{=INDEX(A:A;KKLEINSTE(WENN(((B:B="X")*1)>0;ZEILE(B:B));ZEILE()))}

ist Matrixformel! also {} nicht eingeben und anstatt mit Enter mit Strg+Shift+Enter abschließen.

Bei Start in einer anderen Zeile die Zahl der Zeilen darüber von Zeile() abziehen, also wenn zB erste Formel in Zeile 5, dann ;Zeile()-4))}

Antwort bewerten Vielen Dank für Deine Bewertung

Was möchtest Du wissen?