Neue Zeile bei Trennzeichen

Programmierung unter AOO/LO (StarBasic, Python, Java, ...)

Moderator: Moderatoren

Stephan
********
Beiträge: 12368
Registriert: Mi, 30.06.2004 19:36
Wohnort: nahe Berlin

Re: Neue Zeile bei Trennzeichen

Beitrag von Stephan »

Nutze Split, wie in der Programmhilfe beschrieben, wenn das Trennzeichen ein Semikolon ist also:

Code: Alles auswählen

x = "a;b;c"
einzeln = Split(x, ";")
allerdings gibt es wohl keinen regulären ausdruck für "neue zeile"
ein gewöhnlicher Zeilemumbruch sollte mit CHR(10) zu erzeugen sein, es kommt aber auf den Anwendungsfall an:

Code: Alles auswählen

x = "a;b;c"
einzeln = Split(x, ";")
x2 = ""
For i = LBOUND(einzeln()) To UBOUND(einzeln())
  x2 = x2 & einzeln(i) & CHR(10)
Next i 
Msgbox x2


Gruß
Stephan
Karolus
********
Beiträge: 7535
Registriert: Mo, 02.01.2006 19:48

Re: Neue Zeile bei Trennzeichen

Beitrag von Karolus »

Hallo

Angenommen deine Ausgangsdaten stehen in Spalte A und Spalte B:
in C1:

Code: Alles auswählen

=WIEDERHOLEN( A1 & ZEICHEN(13) ; LÄNGE(B1)-LÄNGE(WECHSELN(B1; ";" ; "" ))+1) 
in D1:

Code: Alles auswählen

=WECHSELN( B1 ; ";" ; ZEICHEN(13) ) 
zieh beide Formeln nach unten soweit wie nötig.
markiere Spalte C und geh zu →Daten→Text in Spalten kein Trennzeichen auswählen →→ok
Wiederhole dies mit Spalte D

Falls du die Ausgangsdaten nicht mehr benötigst kannst du Spalte A und B jetzt löschen.

Karolus
LO7.4.7.2 debian 12(bookworm) auf Raspberry5 8GB (ARM64)
LO25.2.3.2 flatpak debian 12(bookworm) auf Raspberry5 8GB (ARM64)
TrueColor
******
Beiträge: 547
Registriert: Do, 11.03.2010 11:23

Re: Neue Zeile bei Trennzeichen

Beitrag von TrueColor »

Code: Alles auswählen

=WECHSELN( B1 ; ";" ; ZEICHEN(13) ) 
Da ich von hier aus den Link im OP nicht öffnen kann, weiss ich auch nicht genau, worauf sich Karolus bezieht.

Zeichen(13) (ASCII 13 = Carriage Return) produziert bei mir keinen Zeilenumbruch, Zeichen 10 (ASCII 10 = Line Feed) hingegen schon.

Von daher sollte

text1;text2;text3 (als Bsp. in Zelle A1)

mittels

Code: Alles auswählen

=wechseln(A1; ";"; Zeichen(10))
in

text1
text2
text3


umgewandelt, schon mal die halbe Miete sein.
System:
LibO 6 + LibO 7
Karolus
********
Beiträge: 7535
Registriert: Mo, 02.01.2006 19:48

Re: Neue Zeile bei Trennzeichen

Beitrag von Karolus »

Hallo

@TrueColor:
Das Zeichen(13) ist zwar in der Zelle nicht sichtbar, bewirkt aber den Umbruch des Zellinhalts in mehrere Zellen untereinander via →Daten→Text in Spalten

rallemaun hat im Prinzip vorher:

Code: Alles auswählen

x | a;b;c
y | d;e
und möchte das umwandeln zu:

Code: Alles auswählen

x | a
x | b
x | c
y | d
y | e
Karolus



Karolus
LO7.4.7.2 debian 12(bookworm) auf Raspberry5 8GB (ARM64)
LO25.2.3.2 flatpak debian 12(bookworm) auf Raspberry5 8GB (ARM64)
Karolus
********
Beiträge: 7535
Registriert: Mo, 02.01.2006 19:48

Re: Neue Zeile bei Trennzeichen

Beitrag von Karolus »

Super 8)
Das ist jetzt equivalent zu:

Code: Alles auswählen

=WECHSELN( B1 ; ";" ; ZEICHEN(13) )  
Formel runterziehen, und →Daten→Text in Spalten →→ok
LO7.4.7.2 debian 12(bookworm) auf Raspberry5 8GB (ARM64)
LO25.2.3.2 flatpak debian 12(bookworm) auf Raspberry5 8GB (ARM64)
Benutzeravatar
lorbass
********
Beiträge: 4116
Registriert: Mo, 01.05.2006 21:29
Wohnort: Bonn

Re: Neue Zeile bei Trennzeichen

Beitrag von lorbass »

Karolus hat geschrieben:Super 8)
Das ist jetzt equivalent zu:

Code: Alles auswählen

=WECHSELN( B1 ; ";" ; ZEICHEN(13) )   
Bild (SCNR)

Gruß
lorbass
TrueColor
******
Beiträge: 547
Registriert: Do, 11.03.2010 11:23

Re: Neue Zeile bei Trennzeichen

Beitrag von TrueColor »

Karolus hat geschrieben:Hallo

@TrueColor:
Das Zeichen(13) ist zwar in der Zelle nicht sichtbar, bewirkt aber den Umbruch des Zellinhalts in mehrere Zellen untereinander via →Daten→Text in Spalten
[...]
Ah... Danke für die Erleuchtung!
System:
LibO 6 + LibO 7
Antworten