Im Office-Fragen Forum hat ein User die Frage gestellt wie er seine Daten (3000 Zeilen), welche viel Text enthielten, wohl am besten konsolidieren könnte. Er hat darauf eine elegante kleine VBA Programmierung von einem Forum Mitglied erhalten.
Das Problem hat mich nicht losgelassen, denn ich dachte, “das geht noch einfacher”!
Daten mit nur Text verdichten
Im gegebenen Beispiel hat der User eine Tabelle beschrieben die wie folgt aussieht:
Die erste und zweiten Spalte enthalten eine Artikel Nummer und Beschreibung die sich wiederholen. In der dritten bis sechsten Spalte stehen weitere Beschreibungen. Diese befinden sich aber jeweils nur immer auf einer Zeile.
Aus dem Grund können Duplikate nicht einfach entfernt werden und das ganze ist nicht leserlich. Ein typisches Problem wenn Daten aus eine Vorsystem kommen.
Das Ziel im unserem Beispiel muss also sein alle Informationen einer Artikel Nummer auf jeweils eine Zeile zusammenzufassen.
Schritt 1
Wir benutzen
die WENN Formel um Werte die Zusammengehören zu identifizieren und kopieren.
In der Zelle C3 steht die Formel: =WENN($A3=$A2;C2;””).
In Worten könnte man das so ausdrücken: Kopiere den Inhalt von der oberen Zelle wenn der Artikel Nummer dieser Zeile der selber ist wie derjenige in der oberen Zeile.
Schritt 2
Nun kopieren wir diese Formel in jede Leere Zelle in der Datentabelle.
Das machen wir, in dem wir zuerst die Formel mit CTRL+C in den Kopierspeicher nehmen. Nun müssen wir die ganze Datentabelle markieren. Dann gehen wir im Start Menü unter Suchen und Auswählen>Inhalte auswählen anklicken.
Es öffnet sich das Inhalte Auswählen Fenster in dem wir Leerzellen auswählen anklicken (siehe Bild unten). Dann OK drücken.
Nun sollten alle Leerzellen in der Tabelle markiert sein. Worauf wir die sich im Speicher befindende WENN Formel nun auf alle leeren Zellen in der Tabelle einfügen können.
Das Resultat sieht dann so aus (neuer Text mit blauer Schrift hervorgehoben).
Schritt 3
Jetzt sind wir bereit den Text zu konsolidieren. Wir haben nun allen Text für jeden Artikel auf der letzten Zeile konsolidiert. Somit müssen wir lediglich noch die jeweils letzte Zeile mit einem Filter hervorheben können.
Dies machen wir mit einer Hilfsspalte in der wir mit einer Formel die Konsolidierte-Zeilen hervorheben.
Die Formel die wir einsetzten ist abermals eine einfache WENN Formel. Als Beispiel hier die die Formel aus Zelle G5: =WENN(A5=A6;””;”K-Zeile”).
Zuletzt Filtern wir die Hilfsspalte so dass nur Zellen mit Text angezeigt werden.
Fertig
Nun haben wir unsere Text Daten verdichtet!
Ich bin der Meinung dass für den durchschnittlichen User, diese “3-Schritt-Lösung” schneller sein dürfte als die VBA Lösung, es sei denn er ist schon sehr vertraut mit VBA Programmieren.