Zeichen am Textanfang einfügen
#1
Hallo zusammen,

es sollen Zellen, die als Text formatiert sind geprüft werden auf die Anzahl der Zeichen. Wenn es 4 Zeichen sind soll an erster Stelle dieser Zelle eine 0 eingefügt werden, damit es 5-stellige Postleitzahlen sind.

So sieht das Makro bis jetzt aus:

Sub Makro ()

If Len(Cells(AnzahlZeilen, 6).Value) = 4 Then

End Sub

Vielen Dank
Top
#2
hi,

ungeprüft:
If Len(Cells(AnzahlZeilen, 6).Value) = 4 Then
   Cells(AnzahlZeilen, 6)="0" & Cells(AnzahlZeilen, 6)
end if
Top
#3
Hi,

anbei etwas was auch 100.000 PLZ mal schnell umwandeln würde. ;)

Code:
Sub Makro()
    Dim AnzahlZeilen As Long, lngStart As Long
    Dim ArrPlz(), rng As Range, i As Long, intCol As Integer
    lngStart = 1 ' anpassen ab welcher Zeile beginnen die PLZ
    intCol = 6 'in welcher Spalte sind die PLZ
    AnzahlZeilen = Cells(Rows.Count, intCol).End(xlUp).Row
    Set rng = Range(Cells(lngStart, intCol), Cells(AnzahlZeilen, intCol))
    rng.NumberFormat = "@"
    ArrPlz = rng
    For i = 1 To UBound(ArrPlz)
        ArrPlz(i, 1) = Format(ArrPlz(i, 1), "00000")
    Next
    rng = ArrPlz
End Sub
lg Chris
Feedback nicht vergessen.
[Bild: v.gif]
3a2920576572206973742064656e20646120736f206e65756769657269672e
Top
#4
Moin,
Excel 2016 ... Da würde ich über Daten | Abrufen und transformieren, aka Power Query nachdenken, also ganz ohne VBA.
Beste Grüße
  Günther

Excel-ist-sexy.de
  …schau doch mal rein!
Der Sicherheit meiner Daten wegen lade ich keine *.xlsm bzw. *.xlsb- Files mehr herunter! -> So geht's ohne!
Top
#5
(01.02.2018, 14:02)GMG-CC schrieb: Moin,
... Da würde ich über Power Query nachdenken...
Hallo Günther, nachgedacht darüber habe ich auch, aber hierfür (noch) keinen Ansatz...
Gruß Jörg
stolzes Mitglied im ----Excel-Verein
Freund einer excellenten Power Query-Abfrage
Top
#6
Moin Jörg,

das geht im Endeffekt über die Sprache M.
Prinzip in plain Excel: Rechts("0"&A1;5) was dann als M-Formel in einer benutzerdefinierten Spalte so aussieht:
Code:
=Text.End("0"&[Spalte1],5)

Ich habe mal einige Text-Zahlen als Datei angehängt. Ach ja, Power Query wird natürlich "mitdenken" und die Text-Zahlen im 2. Schritt als Zahl umwandeln. Den Schritt lösche ich einfach oder formatiere die Spalte explizit als Text.. Eine Prüfung auf ISNUMERIC habe ich mir nicht angetan.  Angel


Angehängte Dateien
.xlsx   immer 5-stellig.xlsx (Größe: 21,89 KB / Downloads: 2)
Beste Grüße
  Günther

Excel-ist-sexy.de
  …schau doch mal rein!
Der Sicherheit meiner Daten wegen lade ich keine *.xlsm bzw. *.xlsb- Files mehr herunter! -> So geht's ohne!
[-] Folgende(r) 1 Nutzer sagt Danke an GMG-CC für diesen Beitrag:
  • Jockel
Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste