3k Aufrufe
Gefragt in Tabellenkalkulation von ulle-gt5 Mitglied (183 Punkte)
Hallo,
ich möchte solche Daten ins Excel übernehmen.
Zur weiteren Bearbeitung müßten die Daten getrennt werden,
immer ein Buchstabe und die folgente Zahl in eine Zelle

Ursprung:
G2X39.164Y846.773I0J-4.001
G3X46.844Y846.059I4.693J8.829
G3X47.454Y846.598I-0.298J0.953
G1X47.649Y847.024
G2X50.834Y849.071I3.185J-1.454
G1X54.346Y849.071
G2X56.485Y848.342I0J-3.501

Beispiel:
G2X56.485Y848.342I0J-3.501
G2 / X56.485 / Y848.342 / I0 / J3.501
/ soll eine Zelle bedeuten/
Gruß
Ulle

9 Antworten

0 Punkte
Beantwortet von nighty Experte (6.6k Punkte)
hi all ^^

ein beispiel

gruss nighty

Option Explicit
Sub Splitten()
ReDim ArrSpA(ActiveSheet.Cells(Rows.Count, 1).End(xlUp).Row, 1) As Variant
Dim SpZaehler As Long, Zeilen As Long
Dim zeichen As Integer
Dim Lager As String
ArrSpA() = Range("A1:A" & ActiveSheet.Cells(Rows.Count, 1).End(xlUp).Row)
SpZaehler = 1
For Zeilen = 2 To ActiveSheet.Cells(Rows.Count, 1).End(xlUp).Row
For zeichen = 1 To Len(ArrSpA(Zeilen, 1))
If Mid(ArrSpA(Zeilen, 1), zeichen, 1) Like "[A-Za-z]" = True Then
If Lager <> "" Then Cells(Zeilen, SpZaehler) = Lager
Lager = ""
Lager = Lager & Mid(ArrSpA(Zeilen, 1), zeichen, 1)
SpZaehler = SpZaehler + 1
Else
Lager = Lager & Mid(ArrSpA(Zeilen, 1), zeichen, 1)
End If
Next zeichen
Cells(Zeilen, SpZaehler) = Lager
Lager = ""
SpZaehler = 1
Next Zeilen
End Sub
0 Punkte
Beantwortet von rainberg Profi (14.9k Punkte)
Hallo Ulle,

anbei noch eine Formellösung


ul.to/zaagch

Gruß
Rainer
0 Punkte
Beantwortet von ulle-gt5 Mitglied (183 Punkte)
Hallo nighty,
dieses Beispiel funktioniert, nur es sollte in einer ganzen Spalte in allen Zeilen gehen!
Erstmal danke

Hallo Rainer,
so könnte die Lösung aussehen.
Die Spalte A könnte auch gelöscht sind, ist aber nicht erforderlich.
Nur ich finde in deinen Formellösung keine Formel!!!
Oder mache ich da auch schon was verkehrt.
Gruß Ulle
0 Punkte
Beantwortet von ulle-gt5 Mitglied (183 Punkte)
Hallo nighty,
dieses Beispiel funktioniert, nur es sollte in einer ganzen Spalte in allen Zeilen gehen!
Erstmal danke
Sorry,Sorry es geht doch ich nehme alles zurück
Danke gruß Ulle
P.S. Ich bin immer so schnell!!
0 Punkte
Beantwortet von rainberg Profi (14.9k Punkte)
Hallo Ulle,

Nur ich finde in deinen Formellösung keine Formel!!!


... was soll ich dazu sagen?
Die Werte in den Spalten B bis F werden doch durch Formeln erzeugt, klick doch
einfach man in so eine Zelle, dann siehst Du die Formel in der Eingabeleiste.

Die Spalte A kannst Du erst dann löschen, wenn Du die Formeln in den Spalten
B:F durch ihre Werte ersetzt hast.

Formelzellen markieren < kopieren > Inhalte einfügen > Werte

Gruß
Rainer
0 Punkte
Beantwortet von ulle-gt5 Mitglied (183 Punkte)
Hallo Rainer,
ich muß mich auch bei Dir entschuldigen.
Ich bin halt manchmal zu schnell, leider kann ich Deine Datei nicht mehr hochladen.
Könntest Du sie mir noch mal bereitstellen, denn eine Lösung ohne Makros ist auch interessant.
nochmal sorry und danke
Ulle
0 Punkte
Beantwortet von rainberg Profi (14.9k Punkte)
Hallo Ulle,

scheinbar bist Du auch beim Download zu schnell :-))

Musst schon paar Sekunden warten bis auf den Download-Button "Free-
Download" erscheint.

Übrigens, hoch laden kannst Du meine Datei nicht, nur runter laden :-))

Gruß
Rainer
0 Punkte
Beantwortet von ulle-gt5 Mitglied (183 Punkte)
Hallo Rainer,
ich muß an mir zweifeln aber das ist nicht so wichtig.
Deine Formeln sind für dieses Beispiel einwandfrei und es gibt nichts auszusetzen.
Mein Beispiel war nicht exakt, es kann vorkommen, das Y=0 ist
und nicht geschrieben wird.
Es darf aber keine Leerzelle erscheinen!
Es gibt auch andere Buchstabenkombinationen!
trotzdem danke
Ulle
0 Punkte
Beantwortet von rainberg Profi (14.9k Punkte)
Hallo Ulle,

leider kann ich nur Formeln erstellen über Daten, so wie sie mir in der Frage
präsentiert werden.
Was Du jetzt noch an Infos anbietest, trägt nicht zu einer Formelanpassung bei, so
dass ich Dir nicht weiter helfen kann.

Übrigens hast Du ja auch schon signalisiert, dass Dein Problem mit dem
geposteten Makro gelöst ist..

Gruß
Rainer
...