Excel neue Zeile bei bestimmtem Wert

PC FREAKY

Commander
Dabei seit
März 2010
Beiträge
2.236
Hallo,

ich hab ein spezielles Problem in Excel.
Ich arbeite mit CSV Dateien und habe folgende Daten:
A;B;C;D1|D2|D3;E;F
AAA;BBB;CCC;DDD;FFF;EEE;GGG

Jetzt möchte ich, dass Excel mir automatisch aus | eine neue Zeile macht und das ganze folgendermaßen aussieht.

A;B;C;D1;E;F
;;;D2;;
;;;D3;;
AAA;BBB;CCC;DDD;FFF;EEE;GGG

oder
A;B;C;D1;E;F
;;;D1;;
;;;D2;;
;;;D3;;
AAA;BBB;CCC;DDD;FFF;EEE;GGG
Ich weiß dass das Händisch bestimmt einfacher geht, aber ich hab hier ne Excel mit mehreren Tausend Zeilen.
Somit wäre eine einfache Lösung von Vorteil.


Mit freundlichen Grüßen,
PC FREAKY
 

Sun_set_1

Commander
Dabei seit
Sep. 2008
Beiträge
2.835
Excel -> Daten -> "Aus Text"

Dann den Punkt bei Trennzeichen markieren und auf "weiter" tippen.

Dann einfach das | als Trennzeichen eingeben. Allerdings funktioniert das Ganze soweit ich weiß nur mit einem Trennzeichen, nicht 2 verschiedenen. Dafür bräuchtest Du ein Makro. Da würde ich ggf. mal im Office-Forum nach Hilfe fragen. Das Makro dürfte maximal 2 bis 3 Zeilen lang sein...
 

PC FREAKY

Commander
Ersteller dieses Themas
Dabei seit
März 2010
Beiträge
2.236
Müsste aus deiner ersten Zeile
Code:
A;B;C;D1|D2|D3;E;F
nicht eher das werden?
Code:
A;B;C;D1;;
;;;D2;;
;;;D3;E;F
Nach D3 steht ja kein |, also bleiben D3, E und F zusammen. Aber selbst wenn (also D3|E;F), müsste es eher so aussehen:
Code:
A;B;C;D1;;
;;;D2;;
;;;D3;;
;;;;E;F
nein, eben nicht,

Das macht das ganze auch ziemlich kompliziert...
 

Cave Johnson

Commodore
Dabei seit
Dez. 2012
Beiträge
4.229
Und nach welcher "Regel" erfolgt dann nach D3 ebenfalls eine Trennung?

Ich mein, per Makro lässt sich quasi alles umsetzen - aber da brauchts dann eben Regeln um das ganze über Schleifen abarbeiten zu können (mache immer nach | eine neue Zeile, ... betrachte den ; als Separator, ...).

Das ist bei deinen Daten aktuell nicht der Fall - zumindest seh ich's nicht.
 
Zuletzt bearbeitet:

cumulonimbus8

Admiral
Dabei seit
Apr. 2012
Beiträge
9.212
Eine Regel suche ich da in der Tat auch.

Meiner persönlichen Meinung nach ist das nur sinnvoll per Makro zu erledigen. Speziell die oft gelesene Forderung «eine Zeile einzufügen» (o.ä.) ist mit Formeln einfach nicht drin.

Und selbst ein Makro das allein das Beispiel aufdröseln soll, wenn man annehmen will, dass auch die anderen Buchstaben mit »Pipe« verlängert sein können, ist nicht gerade ein Dreizeiler.

Wo kommt so ein Datenchaos denn nur her (OK; ich habe gut Reden, was mir jüngst auf den Tisch kam war schlimmer und ich komme nicht an den ran der das Zeugs zusammenstellt…)

CN8
 

rumbalotte

Lieutenant
Dabei seit
Okt. 2010
Beiträge
668
Und nach welcher "Regel" erfolgt dann nach D3 ebenfalls eine Trennung?
"D1|D2|D3" steht in einer Zelle (Spaltenrenner ist ";")
und für jeden Einzelwert pro Zelle gibts eben eine neue Zeile, wobei die Werte der anderen Zellen nicht mit in die neuen Zeilen kopiert werden, sondern leer bleiben.

Interessant wäre jetzt die Frage, ob auch
Code:
A;B;C1|C2;D1|D2|D3;E;F
AAA;BBB;CCC;DDD;FFF;EEE;GGG
vorkommen kann und wie damit umzugehen ist

z.B.?
Code:
A;B;C1;D1;E;F
;;C2;;;
;;;D2;;
;;;D3;;
AAA;BBB;CCC;DDD;FFF;EEE;GGG
so oder so, an einem Script kommst Du nicht vorbei, Excel kann das so nicht
 

Cave Johnson

Commodore
Dabei seit
Dez. 2012
Beiträge
4.229
Wieso steht dann D3 allein, aber D1 nicht?


Eigentlich müsste doch dann folgendes passieren:

Code:
A;B;C;D1|D2|D3;E;F
Code:
A;B;C;;;
;;D1;;
;;D2;;
;;D3;;
E;F
Das E;F in der ersten Zeile bleibt ergibt sich aus deiner Logik aber auch nicht!?

Demnach würde die Regel lauten: verschiebe alles, was durch | getrennt ist, in neue Zeilen. Lasse den Rest unberührt.
 
Zuletzt bearbeitet:
Top