Registriert seit: 12.11.2021
Version(en): 2019
Hallo,
ich habe eine Zelle mit hintereinander Ort, PLZ, Strasse und Hausnummer:
AUGSBURG86159HOCHFELDSTRASSEASSE151/6
Wie kann man daraus 4 Zellen mit Ort, PLZ, Strasse und Hausnummer erstellen?
Besten Dank
Witold
Registriert seit: 11.04.2014
Version(en): Office 365
Hallo,
Text in Spalten, manuelle Trennung.
Viele Grüße
Klaus-Dieter
Der Erfolg hat viele Väter,
der Misserfolg ist ein Waisenkind
Richard Cobden
Registriert seit: 12.11.2021
Version(en): 2019
Hallo Klaus-Dieter,
hab vielleicht noch eine Info vergessen... Es sind ganz unterschiedliche Text-Längen:
AUGSBURG86159HOCHFELDSTRASSEASSE151/6
REMSCHEID42853KIPPERSTRASSEASSE5B
DEGGINGEN73326UNTEREOSTLANDSTRASSEASSE11
GROSSDENKTE38106AUFDEMSTEINKAMP29
NÜRNBERG90425HERFORDERSTRASSEASSE21
FREILASSING83395PFARRERLEITN9
RECKLINGHAUSEN45657ZUMNONNENBERG8
VEHLOW16866LINDENSTRASSEASSE55
REMSCHEID42853PARKSTRASSEASSE23
WALD88639MUSSNAUENWEG3
Registriert seit: 29.09.2015
Version(en): 2030,5
Die Daten waren schon einmal getrennt. Frag mal den Lieferant dieser 'Daten'.
Registriert seit: 06.12.2015
Version(en): 2016
Hallo,
es sind immer Buchstaben für die Stadt, dann 5 Zahle für die PLZ gefolgt von Buchstaben und Zahlen für Straße und Haus-Nr.
Die PLZ ist eindeutig zu erkennen, z.B. mit
like "#####"
oder
RegEx.Pattern = "\d{5}"
mfg
Registriert seit: 12.11.2021
Version(en): 2019
17.10.2023, 10:44
(Dieser Beitrag wurde zuletzt bearbeitet: 17.10.2023, 10:48 von Ketiv .)
Geht es bitte ein wenig konkreter? Ich kann mit
RegEx.Pattern = "\d{5}"
wenig anfangen...
Registriert seit: 18.10.2020
Version(en): 365
Powerquery (Bestandteil von Excel seit 2013 oder 2016) darf auch nicht fehlen, damit geht es auch
Registriert seit: 06.12.2015
Version(en): 2016
In Test reicht dieser Code
Code:
Sub Adressen()
Dim RR As Object
With CreateObject("vbscript.regexp")
.Global = True
.IgnoreCase = True
.MultiLine = False
.Pattern = "\d{5}"
For i = 1 To Cells(Rows.Count, 1).End(xlUp).Row
Set RR = .Execute(Cells(i, 1))
Cells(i, 2) = RR(0).FirstIndex
Cells(i, 4) = Left(Cells(i, 1), RR(0).FirstIndex)
Cells(i, 5) = RR(0)
Cells(i, 6) = Mid(Cells(i, 1), RR(0).FirstIndex + 6)
Next i
End With
End Sub
Die Daten wie in der beigefügten Datei
Angehängte Dateien
Adressen.xlsm (Größe: 16,5 KB / Downloads: 3)
Registriert seit: 12.10.2014
Version(en): 365 Insider (32 Bit)
Moin!
Nächster Schuss ins Blaue:
Lade mal die Exceldatei hoch.
Schließlich gibt es auch unsichtbare Trennzeichen.
Gruß Ralf
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag.
Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
Registriert seit: 21.12.2017
Version(en): MS 365 Family (6 User x 5 Geräte für jeden) Insider-Beta
17.10.2023, 15:42
(Dieser Beitrag wurde zuletzt bearbeitet: 17.10.2023, 15:47 von LCohen .)
Verwende
Excel Web (kostenlos) oder 365!
B1:
=LET(a;A1;
n;SEQUENZ(LÄNGE(a));
x;(ISTZAHL(--TEIL(a;n;1))+ISTZAHL(--TEIL(a;n+1;1))=1)*(n+1);
TEXTTEILEN(TEXTKETTE(TEIL(a;n;1)&WENN(ISTZAHL(XVERGLEICH(n+1;FILTER(x;x);0;2));";";""));";"))
Den / akzeptiere ich hier nicht als Ziffernbestandteil, denn Hausnummern könnten z.B. auch durch - getrennt werden. Hier ist also manuelle Nacharbeit nötig, z.B. I1: =E1&F1&G1&H1
STRASSEDES17JUNI oder
HAREMDER72JUNGFRAUEN
dürfen Deine Straßen aber nicht heißen. Und dann war da noch Mannheim ...