Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: String(Zahlen) in Spalten aufteilen

String(Zahlen) in Spalten aufteilen
30.09.2019 22:44:56
Piotrek
Hallo,
ich komme nicht weiter und bitte um Eure Hilfe.
Ich habe einen String der wie folgt aussieht:
46,72,650,-0,698,0,921,1,155,127,162
Die Zahlen sollen nun in Spalten aufteilt werden.
46 72,65 -0,698 0,921 1,155 127,172
Wie lässt sich so etwas am besten lösen?
Wie müsste der VBA-code dazu aussehen?
Für Eure Hilfe bedanke ich mich im voraus ,
Peter
Anzeige

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: String(Zahlen) in Spalten aufteilen
30.09.2019 22:59:42
Sigi
Hallo Peter,
woran kann man erkennen wo getrennt werden soll?
Ohne klares Trennzeichen wird's schwierig.
Gruß
Sigi
AW: String(Zahlen) in Spalten aufteilen
30.09.2019 23:01:25
Daniel
HI
normalerweise macht man das in dem man den String in die erste Spalte schreibt und dann mit Daten - Datentools - Text in die Spalten verteilt, aber das Problem hier ist, dass du als Trenn- und Dezimalzeichen jedesmal das Komma verwendest.
kannst du mal eine allgemeine Regel formulieren, aus der man ableiten kann, ob "46,72,650" jetzt für "42 720 650" steht, oder für "42,72 650" oder für "42 72,65"
Gruß Daniel
Anzeige
AW: String(Zahlen) in Spalten aufteilen
30.09.2019 23:14:53
Piotrek
Hallo Daniel,
ich erhalte die Zahlen als CSV-File als Export-Daten aus einer Software. Ich frage mich, was der Software-Entwickler sich dabei gedacht hat die Daten so zu exportieren.
Das Interessante ist, dass jede 3-te Komma als Trennzeichenzeichen angesehen werden kann und jedes 2-te Komma als Dezimalzeichen dient.
Vielleicht kann man die Systematik irgendwie nutzen?
LG, Peter
Anzeige
AW: String(Zahlen) in Spalten aufteilen
30.09.2019 23:31:28
Piotrek
Hallo Daniel,
Komma 1: Trennzeichen
Komma 2: Dezimalkomma
Komma 3: Trennzeichen
usw.
Hilft das?
LG, Peter
AW: String(Zahlen) in Spalten aufteilen
30.09.2019 23:44:51
Daniel
kann man ausnutzen, aber was ist dann das erste Komma, oder das sechste?
wenn das Komma das Trennzeichen ist, müsste konsequenterweise der Punkt als Dezimalzeichen verwendet werden.
Oder die Zahlen müssten als Text in Anführungszeichen geschrieben werden, damit man erkennen kann, ob ein Komma ein Trennzeichen ist oder zum Wert gehört.
für dich wäre der Workaround, dass du mit einer Schleife durch den Text gehst, die Kommas zählst, an der Anzahl ermittelst ob es ein Dezimal- oder ein Trennzeichen ist, bei einem Trennzeichen das Komma durch ein anderes Trennzeichen ersetzt und dann mit dem so überarbeiteten Text weiter arbeitest.
also mal als beispiel für deine Beschreibung (jedes dritte Komma ein Trennzeichen):
txt = "....."
for i = 1 to len(txt)
if mid(txt, i, 1) = "," then
z = z + 1
if z mod 3 = 0 then mid(txt, i, 1) = ";"
end if
next
Range("A1").Value = txt
Columns(1).TextToColumns Destination:=Range("A1"), DataType:=xlDelimited, _
TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=False, _
Semicolon:=True, Comma:=False, Space:=False, Other:=False, FieldInfo _
:=Array(Array(1, 1), Array(2, 1), Array(3, 1), Array(4, 1)), DecimalSeparator:="," _
, ThousandsSeparator:=".", TrailingMinusNumbers:=True
Gruß Daniel
Anzeige
AW: String(Zahlen) in Spalten aufteilen
01.10.2019 00:27:23
Piotrek
Hallo Daniel,
danke für deine Antwort.
Werde morgen es testen
LG, Peter
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige