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

fehlende Leerzeichen in KFZ-Kennzeichen ergänzen

Forumthread: fehlende Leerzeichen in KFZ-Kennzeichen ergänzen

fehlende Leerzeichen in KFZ-Kennzeichen ergänzen
02.04.2025 09:02:47
Coumax
Hallo zusammen,

ich habe eine Liste von KFZ-Kennzeichen in einer Spalte stehen. Manche sind richtig eingetragen und manche falsch.

So sollen die Kennzeichen aussehen
XRH-Z 23
XRH-ZU 252E
also immer ein Leerzeichen zwischen der Zahl und dem davorstehenden Buchstaben.

manche Einträge sehen aber so aus
XRH-D23
XRH-DG252E
hier fehlen mir die Leerzeichen.

Ich suche eine Lösung diese "fehlenden Leerzeichen" per Code zu ergänzen.

Schon jetzt vielen Dank für Eure Hilfe

Gruss Coumax
Anzeige

9
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: fehlende Leerzeichen in KFZ-Kennzeichen ergänzen
02.04.2025 09:26:36
Peter Trawinski
Erst das "-" suchen und dann die folgenden Zeichen durchgehen, bis die erste Ziffer kommt. Dort Space einfügen, falls (davor) noch nicht vorhanden.
Oder - je nach dem, was falsch sein kann - gleich nach Space suchen und Obiges nur machen, wenn keines gefunden.
AW: fehlende Leerzeichen in KFZ-Kennzeichen ergänzen
02.04.2025 10:19:15
MCO
Guten Morgen!

ChatGPT hat mir beim einfachen kopieren deiner Anfrage schon einen Code ausgespuckt, der hervorragend funktioniert. (getestet)

Probier es mal aus:

Wenn du nicht in nebenstehender Zelle das Ergebnis möchtest sondern direkt in der gleichen Zelle dann bitt .offset(0,1) entfernen

Weitere Informationen zur regexp-funktion:
https://www.vba-tutorial.de/applikation/regexp.htm
testen mit https://regex101.com/

Sub KfzKennzeichenKorrigieren()

Dim ws As Worksheet
Dim rng As Range
Dim cell As Range
Dim regex As Object
Dim match As Object
Dim korrigiert As String

' Setzt das Arbeitsblatt (aktives Blatt)
Set ws = ActiveSheet

' Bereich mit KFZ-Kennzeichen (hier Spalte A, ab Zeile 1)
Set rng = ws.Range("A1:A" & ws.Cells(ws.Rows.Count, "A").End(xlUp).Row)

' Regulärer Ausdruck für Kennzeichen-Korrektur
Set regex = CreateObject("VBScript.RegExp")
regex.Pattern = "([A-Z]+-[A-Z]+)(\d+.*)"
regex.Global = False

' Durchläuft alle Zellen im Bereich
For Each cell In rng
If regex.Test(cell.Value) Then
Set match = regex.Execute(cell.Value)(0)
korrigiert = match.SubMatches(0) & " " & match.SubMatches(1)
cell.Offset(0, 1).Value = korrigiert
End If
Next cell

' Speicher freigeben
Set regex = Nothing
MsgBox "Korrektur abgeschlossen!", vbInformation
End Sub


Gruß, MCO
Anzeige
AW: fehlende Leerzeichen in KFZ-Kennzeichen ergänzen
02.04.2025 10:27:43
Coumax
Hallo MCO,

genau das habe ich gesucht !!!

vielen herzlichen Dank.

Gruss Coumax
AW: fehlende Leerzeichen in KFZ-Kennzeichen ergänzen
02.04.2025 10:27:25
volti
Hallo Coumax,

hier noch eine Idee:

Berücksichtigt auch evtl. Kleinschreibung oder Doppelleerzeichen....
Sub Test()

Debug.Print SetKFZ("GN-v5677")
End Sub

Function SetKFZ(ByVal sKFz As String) As String
Dim i As Long

sKFz = UCase$(Replace(sKFz, " ", ""))
For i = Len(sKFz) - 1 To 1 Step -1
If Mid$(sKFz, i, 1) Like "[A-Z]" Then
SetKFZ = Left$(sKFz, i) & " " & Mid$(sKFz, i + 1)
Exit Function
End If
Next i
End Function


Gruß KH
Anzeige
Im Anhang habe...
02.04.2025 12:25:04
Case
Moin, :-)

... ich dir ein Beispiel erstellt: ;-)
https://www.herber.de/bbs/user/176546.xlsb

Es ist eine UDF, welche du im Tabellenblatt nutzen kannst, oder direkt aus einer Sub aufrufen. ;-)

Servus
Case
Anzeige
AW: fehlende Leerzeichen in KFZ-Kennzeichen ergänzen
02.04.2025 13:18:52
UweD
Noch eine Lösung als Funktion

in ein Modul
Function KFZ(Eingabe As String)

Dim i As Integer
For i = 2 To Len(Eingabe)
If IsNumeric(Mid(Eingabe, i, 1)) Then
KFZ = Replace(Left(Eingabe, i - 1) & " " & Mid(Eingabe, i), " ", " ")
Exit For
End If
Next
If i > Len(Eingabe) Then KFZ = Eingabe
End Function


Arbeitsblatt mit dem Namen 'Tabelle1'
 AB
1XRH-D23XRH-D 23
2XRH-DG252EXRH-DG 252E
3XRH-DG 252EXRH-DG 252E
4AB-DE ZZAB-DE ZZ

ZelleFormel
B1=KFZ(A1)


LG UweD
Anzeige
AW: fehlende Leerzeichen in KFZ-Kennzeichen ergänzen
02.04.2025 16:22:29
daniel
Hi
und noch eine Funktionsvariante:

Function LeerZeichen(txt as String) as string

dim i as long
for i = 1 to len(txt)
if mid(txt, i, 1) like "#" then
LeerZeichen = Left(txt, i - 1) & " " & mid(txt, i)
Exit Function
end if
next
LeerZeichen = txt
End Function


Gruß Daniel
Anzeige
AW: fehlende Leerzeichen in KFZ-Kennzeichen ergänzen
02.04.2025 10:41:46
Coumax
Hallo KH,

auch Dir vielen Dank.

Das schaue ich mir auf alle Fälle auch noch an.

Gruss Coumax
AW: fehlende Leerzeichen in KFZ-Kennzeichen ergänzen
02.04.2025 09:55:13
Coumax
Hallo Peter,
vielen Dank. Genau das wäre der Ansatz.

Aber wie mache ich das?

Ich benötige bitte einen VBA-Code der dies ermöglicht.

Gruss Coumax
Anzeige
Anzeige
Live-Forum - Die aktuellen Beiträge
Datum
Titel
14.05.2026 13:31:09
14.05.2026 09:50:42
13.05.2026 19:14:18