hallo
haber hier eine tabelle mit 2 spalten im Calc
z.b.
anton , berta - I- eins, zwei, drei
kann ich die daten irgendwie aufarbeiten
und die inhalte an den kommas trennen und in neue zellen einfügen ?
(das -I-) soll eine zellwand in der zeile darstellen
es geht um etwa 2000 zeilen in der tabelle
die einträge sind unterschiedlich
das ergebnis soll etwa wie folgt aussehen
anton -I- eins, zwei, drei
berta -I- eins, zwei, drei
oder
anton, berta -I- eins
anton, berta -I- zwei
anton, berta -I- drei
******************************
beim rumstöbern im netz habe ich eine funktion aus dem
ms excel gefunden oder nen hinweis auf ein makro
funktion
texttocolums
oder text zu spalte
ein makro könnte etwa so aussehen
Sub trennen_neu()
Selection.TextToColumns Destination:=Range("A1"), DataType:=xlDelimited, _
TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=True, Tab:=False, _
Semicolon:=False, Comma:=False, Space:=True, Other:=False, FieldInfo _
:=Array(Array(1, 1), Array(2, 1))
End Sub
hierbei wurde statt semikolon ein leerzeichen als trenner verwendet
meine frage gibts diese funktion auch im calc
oder irgendwas vergleichbares ????
über die hilfe finde ichs nicht
gruss peter
Daten in zellen (Text,Text) in neue zellen trennen (spalten)
Moderator: Moderatoren
Meiner Meinung nach brauchst Du dafür kein Makro. sCalc hat eine Reihe von Funktionen, um Textketten zu bearbeiten.
So z.B findest Du die Positionen der Kommata:
Erstes Komma: FINDEN(",";A1)
Zweites Komma: FINDEN(",";A1;FINDEN(",";A1)+1)
Drittes Komma: FINDEN(",";A1;(FINDEN(",";A1;FINDEN(",";A1)+1))+1)
Mit LINKS(), RECHTS(), oder TEIL() kannst Du nun Teilketten bilden:
=TEIL(A1;1;(FINDEN(",";A1))-1) liefert: anton
=TEIL(A1;FINDEN(",";A1)+1;LÄNGE(A2)-FINDEN(",";A1;FINDEN(",";A1)+1)) liefert: berta - I- eins
Die Teilketten kannst Du dann wieder mit VERKETTEN nach Belieben zusammenfügen.
So z.B findest Du die Positionen der Kommata:
Erstes Komma: FINDEN(",";A1)
Zweites Komma: FINDEN(",";A1;FINDEN(",";A1)+1)
Drittes Komma: FINDEN(",";A1;(FINDEN(",";A1;FINDEN(",";A1)+1))+1)
Mit LINKS(), RECHTS(), oder TEIL() kannst Du nun Teilketten bilden:
=TEIL(A1;1;(FINDEN(",";A1))-1) liefert: anton
=TEIL(A1;FINDEN(",";A1)+1;LÄNGE(A2)-FINDEN(",";A1;FINDEN(",";A1)+1)) liefert: berta - I- eins
Die Teilketten kannst Du dann wieder mit VERKETTEN nach Belieben zusammenfügen.
Hallo Peter,
ist die Struktur deiner Spalteninhalte immer identisch? also in Spalte 1 immer zwei Namen, mit Komma getrennt, in Spalte 2 immer drei Werte, mit Komma getrennt?
Dann sollte das mit Formeln gelingen (siehe Post von Lenu).
Wen nicht, dann wäre ein Makro wohl doch angebrachter.
Dann gib mir mal ein paar mehr Daten: Wieviel Werte in Spalte 11, wieviel Werte in Spalte 2 (jeweils von - bis),
und wie soll das Ergebnis tatsächlich aussehne. Deine beiden Möglichkeiten sind ja doch grundverschieden - welche hättest du denn gerne?
Und: Wo sollen die Ausgaben erfolgen? Zeilenweise, Spaltenweise , untereinander, in einem neuen Tabellenblatt oder im gleichen?
Gruss
Thomas
ist die Struktur deiner Spalteninhalte immer identisch? also in Spalte 1 immer zwei Namen, mit Komma getrennt, in Spalte 2 immer drei Werte, mit Komma getrennt?
Dann sollte das mit Formeln gelingen (siehe Post von Lenu).
Wen nicht, dann wäre ein Makro wohl doch angebrachter.
Dann gib mir mal ein paar mehr Daten: Wieviel Werte in Spalte 11, wieviel Werte in Spalte 2 (jeweils von - bis),
und wie soll das Ergebnis tatsächlich aussehne. Deine beiden Möglichkeiten sind ja doch grundverschieden - welche hättest du denn gerne?
Und: Wo sollen die Ausgaben erfolgen? Zeilenweise, Spaltenweise , untereinander, in einem neuen Tabellenblatt oder im gleichen?
Gruss
Thomas
Unterstützer LibreOffice, zertifizierter Trainer und Berater
Bücher: LibreOffice 6- Einstieg und Umstieg
Makros Grundlagen - LibreOffice / OpenOffice Basic
Bücher: LibreOffice 6- Einstieg und Umstieg
Makros Grundlagen - LibreOffice / OpenOffice Basic