Excel - Daten aus Spalten mit Regel zusammenfassen?
Hallo,
ich habe noch eine andere Frage zu Excel:
Wenn ich die Daten mehrere Spalten zusammenfügen möchte, könnte ich die Daten alle manuell in eine Spalte kopieren und Duplikate entfernen. Kann ich aber auch eine Regel einfügen, dass die Daten automatisch eingefügt werden und ich nicht erst die Daten alle manuell kopieren muss. Im Screenshot ein Beispiel. Ich möchte in Spalte D alle Daten aus Spalte A - C haben. Kann ich in Spalte D eine Regel einfügen, so dass ich Spalte A - C nur noch markieren muss und ich die daten nicht manuell rüber kopieren muss?
4 Antworten
Du könntest Dir ein Makro anlegen
- mit entsprechenden Zeilenkapazitäten die Daten der Spalten A;B und C in die Spalte D einfügen, Duplikate entfernen und sortieren lassen.
- z.B. A2:A100 in D2, B2:B100 ab D100 und C2:C100 ab D200 einfügen.
Für das Makro könntest Du Dir ein Symbol anlegen und diesem das Makro zuweisen.
hier die Formel für D2
= A2 & " " & B2 & " " & C2
Die Zeile dann einfach drunter ziehen.
Um die doppelten Namen allerdings zu entferne, braucht man VBA
Mit markieren, wirst du ohne VBA nicht weiter kommen, aber du könntest es automatisch "Stapeln lassen" sofern ich dich richtig verstehe, das es dein Ziel ist die Spalten A bis C alle stapeln zu lassen.
dies wäre so möglich:
Die erste Variante hat dabei die noch das Problem, dass es mit Spalten die Leerzeilen enthalten, da alle unterschiedlich lang sind nicht umgehen kann, entweder müsstest du dann alle händisch markieren und vom ersten bis zum letzten Eintrag. Andernfalls entstehen diese "Probleme"
=WENN(ISTLEER(VSTAPELN(A2:A14;B2:B14;C2:C14));"";VSTAPELN(A2:A14;B2:B14;C2:C14))
oder du verwendest die etwas komplizierte Variante:
=VSTAPELN(INDIREKT("A2:A"&SUMMENPRODUKT(MAX((A:A<>"")*ZEILE(A:A))));INDIREKT("b2:b"&SUMMENPRODUKT(MAX((B:B<>"")*ZEILE(B:B))));INDIREKT("c2:c"&SUMMENPRODUKT(MAX((C:C<>"")*ZEILE(C:C)))))
dort wir immer die letzte gefüllte Zelle ermittelt somit gibt es am Ende keine Leerzellen, einzig und alleine das gleiche Problem hättest du wenn du mitten in der Spalte Leerzellen hast.
Wenn jetzt noch alle Einträge raus haben willst die doppelt sind schaltest du noch die Funktion eindeutig davor
=EINDEUTIG(VSTAPELN(INDIREKT("A2:A"&SUMMENPRODUKT(MAX((A:A<>"")*ZEILE(A:A))));INDIREKT("b2:b"&SUMMENPRODUKT(MAX((B:B<>"")*ZEILE(B:B))));INDIREKT("c2:c"&SUMMENPRODUKT(MAX((C:C<>"")*ZEILE(C:C))))))
Und schon ist das erledigt, sieht dann so aus:




Wenn die Tabelle soweit fix ist würde ich alle Werte in Spalte D ziehen (mit "=...") sodass alle Namen aus allen Spalten untereinander stehen. in Spalte E2 würde ich dann "=WENN(EINDEUTIG(D:D)=0;"";EINDEUTIG(D:D))" schreiben.
Ist nicht die feine englische Art aber erfüllt den Zweck wenn sich die Tabelle nicht mehr ändert