Zwei-/Dreistellige Zahl mit führenden 0 auf 4 Stellen auffüllen

  • Excel

Es gibt 2 Antworten in diesem Thema. Der letzte Beitrag () ist von Chris92.

    Zwei-/Dreistellige Zahl mit führenden 0 auf 4 Stellen auffüllen

    Hallo Jungs und Mädels,

    ich benötige wieder einmal Hilfe. Und zwar habe ich eine Excel-Liste mit zwei- und/oder dreistelligen Zahlen. Diese Zahlen müssen aber immer 4 Stellen haben, das heißt es sollen vorne führende Nullen gesetzt werden. Ich hab schon etwas in VBA probiert, jedoch setzt er immer die angegebene Zahl an Nullen vorne ran, das soll ja aber variieren.

    Hier der Code den ich bereits habe:

    Visual Basic-Quellcode

    1. Sub NullEinfüg()
    2. Dim zeile, spalte As Integer
    3. spalte = 1
    4. zeile = 1
    5. While Cells(zeile, spalte).Value <> ""
    6. Cells(zeile, spalte).Value = "000000" + Cells(zeile, spalte).Value
    7. zeile = zeile + 1
    8. Wend
    9. End Sub


    Anbei auch noch die Excel mit IST und SOLL.

    Schon mal Danke für eure Hilfe! ;)
    Dateien
    • IST_SOLL.xls

      (24,06 kB, 409 mal heruntergeladen, zuletzt: )
    Hey Chris,

    benutz doch einfach das benutzerdefinierte Zellformat?!
    Bereich markieren - Zellen formatieren - Benutzderdefiniert
    0000

    Per VBA

    Visual Basic-Quellcode

    1. cells(1,1).numberformat = "0000"

    und wenn du wirklich den Wert ändern willst (nicht nur die Anzeige)

    Visual Basic-Quellcode

    1. cells(1, 1).value = "'" & format(cells(1, 1).value, "0000")


    lg
    :!: Danke an alle, die ihr Wissen freiwillig teilen und stets so kompetent & höflich sind :!:
    Funktioniert bestens. Vielen Dank. :thumbup:

    Hier mein kompletter Code:

    Visual Basic-Quellcode

    1. Sub ComplZero()
    2. Dim iRow As Integer
    3. Dim column As Integer
    4. iRow = 1
    5. column = 1
    6. While Not IsEmpty(Cells(iRow, column))
    7. Cells(iRow, column).Value = "'" & Format(Cells(iRow, column).Value, "0000")
    8. iRow = iRow + 1
    9. Wend
    10. MsgBox "Vorgang erfolgreich ausgeführt"
    11. End Sub


    Vielleicht geht's noch einfacher, aber er funktioniert :thumbsup: