Formel/Makro mit Funktionsweise wie Pivot-Tabelle

Ich stehe vor folgender Herausforderung:
ich möchte in einer Übersicht alle Zellen aufführen, die ein bestimmtes Suchkriterium aufweisen.
Z.B. in einer Klasse sind alle Mädchen mit einem „x“ gekennzeichnet. Ich möchte nun in einer Übersicht alle Namen die das „x“ aufweisen auflisten. Eine Pivottabelle kann ich nicht nehmen, da in meinem Fall die Basistabelle sehr groß ist und viele Leerzeilen, Gruppierungen und verbundene Zellen aufweist.

Ich möchte nun mit einer Wenn/ISTFehler + INDEX/Vergleich-Formel die relevanten Namen in die Übersicht ziehen. Dies funktioniert auch, jedoch findet meine Formel immer nur den ersten Namen mit dem Suchkriterium „x“.

Was muss ich machen, dass erkannt wird, dass eine Zelle schon aufgelistet wurde und mir somit alle Zellen mit dem Suchkriterium „x“ aufgelistet werden?
Gibt es hierfür eine Formel oder muss man ein Makro programmieren?

Kann mir jemand helfen??

Vielen lieben Dank
Anna

Hallo Anna

Bevor du ein Makro programmierst, könntest du eines aufnehmen (Record Macro), wie folgt:

  • Schalte den Autofilter ein
  • Klicke auf Makros aufnehmen
  • Wähle „x“ im Dropdown-Menü des Filters
  • Ganze Tabelle markieren, Ctrl. + C
  • Neues Tabellenblatt öffnen, Ctr. + V
  • evtl. in der ursprünglichen Tabelle die Filterung wieder rückgängig machen
  • Makro Stop

Das Makro kannst du mit einem Tastatur-Kürzel versehen und bei Bedarf ausführen. Der Autofilter muss vorgängig aktiviert werden, sonst reklamiert es. Ebenfalls funktioniert das Umbenennen des Tabellenblatts nicht einfach so (hier müsste man vermutlich in Visual Basic rein).

Hoffe, deine Tabelle ist nicht zu komplex, habe selbst keine Erfahrung damit, aber der Test vorhin hat geklappt.

Viel Erfolg!
Gruss lilanelkenrot

Hallo Anna,

ohne die Tabelle gesehen zu haben, wird es echt schwierig, irgendwelche Tipps zur Vorgehensweise zu geben.

Gruß
Dirk

Hallo,

also du brauchst mit Sicherheit einen Zähler eingebaut. Ich glaube, dass ist nur über ein Makro realisierbar. Also die Felder einlesen und dann mit if then abfrage durchgehen. und bei dem teil für then musst du eben Startzelle z.B A3 plus 1. Damit er immer einen Schritt weiter geht.
Wie der Code aber im Detail aussehen würde, weiß ich jetzt auch nicht.
Da müsste ich mich auch erst ein bisschen länger damit auseinander setzten.

Glg

Hallo Anna,
vieles ist mir an deiner Beschreibung nicht ganz klar :

  • warum ist deine Basistabelle denn so groß ? kannst du sie vielleicht „abspecken“
  • warum gibt es so viele Leerzeilen ? kannst du das vielleicht auch ändern ?

ohne Leerzellen dürfte das ganze mit dem Autofilter funktionieren.
Kannst du vielleicht einen Anhang mailen, ich komm sonst nicht so ganz klar mit dem ganzen und mit Index/Vergleich bin ich nicht so der Profi, aber ein Makro könnte ich dir bauen.

Gruß
Hans-Otto

Hallo Anna,
natürlich besteht die Möglichkeit, dass ich die Frage nicht richtig verstanden habe. Trotzdem hier mein Versuch:

  1. Nehmen wir an, auf dem Tabellenblatt Original stehen die Ausgangsdaten. Dann kopiere mit =WENN(Original!A1=„x“;Original!B1;„“) die mit „x“ markierten Zellen in ein neues Blatt.
  2. Die dann entstandene Liste mit freien Zeilen bekommst Du weg, wenn Du mit dem der Möglichkeit FILTER experimentierst.
    Gruß Marx

Hallo,

ich würde mit einem Spezialfilter arbeiten. Darüber kann man Kriterien festlegen und die gefilterten Daten in eine neue Tabelle übertragen.
Gehe über Daten –> Filtern –> erweiterter Filter

Wenn du noch Fragen hast, melde dich ruhig.

Viele Grüße
weißes Karnickel

Hallo Anna,

tut mir leid, ich habe keine wirkliche Lösung für das Problem gefunden.

Vielleicht klppt es trotzdem mit Pivot, wenn als Basistabelle einfach ein neues Blatt genommen wird mit Formelbezug zur eigentlichen Tabelle. Das löst zumindest die Verbundzellen auf und füllt die leeren. Bsp: Tabelle 1 ist Original, Tabelle 2 die Pivot-Grundlage. In A1 der Tabelle 2 die Formel: =Tabelle1!A1 usw.

Gruß S. Weigelt