Live-Forum - Die aktuellen Beiträge
Datum
Titel
17.10.2025 10:28:49
16.10.2025 17:40:39
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Zahl mit Nullen auffüllen !!!

Zahl mit Nullen auffüllen !!!
17.11.2008 15:49:00
Zoran
Hallo zusammen.
Habe folgenden Code:

Sub NullWert()
Dim c As Range
Dim laenge As Integer
Dim maxNull As Byte
Dim i As Integer
For Each c In Selection
laenge = Len(c)
If c  "" And IsNumeric(c) Then
c.Select
maxNull = laenge - 10
For i = maxNull To 1 Step -1
c = c & "0"
Next i
ActiveCell.FormulaR1C1 = c
End If
Next c
End Sub


1. Wie muss ich den Code anpassen, dass er mir die Ausgangszahl (z.B. 5555) mit Nullen anstatt hinten (5555000000), vor die Zahl (0000005555) auffüllt?
2. Wie erhalte ich zusätzlich eine Box, die den Anwender abgefragt, wie viele Stellen die Zahl haben soll, d.h. der Anwender soll z.B. 5 stellen eintragen können wenn es sich um eine PLZ handelt?
Danke im Voraus.
MFG
Zoran

Anzeige

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Zahl mit Nullen auffüllen !!!
17.11.2008 15:59:22
hary
Hallo Zoran
zu 1: geht doch auch ueber benutzer definiertes format.
Format: 000000000000
dann wird aus 5555 0000000055555
AW: Zahl mit Nullen auffüllen !!!
17.11.2008 16:09:00
Tino
Hallo,
hier in etwas abgeänderter Form
 Sub NullWert()
 Dim c As Range
 Dim laenge As Integer

 Dim i As Integer
    For Each c In Selection
     laenge = Len(c)
     If IsEmpty(c) And IsNumeric(c) Then
       c = "'" & String(10 - laenge, "0") & c
        
    'oder mit diesen beiden Zeilen, sind zZ. inaktiv########## 
        'c.NumberFormat = "@"                               '# 
        'c = "'" & String(10 - laenge, "0") & c             '# 
    '######################################################### 
     End If
    Next c
 End Sub


Gruß Tino

Anzeige
noch ein Fehler in der zweiten, Korrektur
17.11.2008 16:11:12
Tino
 Sub NullWert()
 Dim c As Range
 Dim laenge As Integer

 Dim i As Integer
    For Each c In Selection
     laenge = Len(c)
     If IsEmpty(c) And IsNumeric(c) Then
       c = "'" & String(10 - laenge, "0") & c
        
    'oder mit diesen beiden Zeilen, sind zZ. inaktiv########## 
        'c.NumberFormat = "@"                               '# 
        'c = String(10 - laenge, "0") & c             '# 
    '######################################################### 
     End If
    Next c
 End Sub


Anzeige
hab nicht ausgeschlafen, noch eine Korrektur.
17.11.2008 16:16:00
Tino
Hallo,
in der Zeile ist noch ein Fehler, sorry.
If IsEmpty(c) And IsNumeric(c) Then
muss so sein
If Not IsEmpty(c) And IsNumeric(c) Then
Diesmal habe ich den Code getestet. ;-)
Gruß Tino
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige
Anzeige

Infobox / Tutorial

Zahlen mit Nullen auffüllen in Excel


Schritt-für-Schritt-Anleitung

Um Zahlen in Excel mit Nullen aufzufüllen, kannst du die folgenden Methoden verwenden:

  1. Benutzerdefiniertes Format:

    • Markiere die Zellen, die du formatieren möchtest.
    • Rechtsklicke und wähle „Zellen formatieren“.
    • Wähle „Benutzerdefiniert“ und gebe das gewünschte Format ein, z.B. 00000 für fünfstellige Zahlen.
  2. VBA-Makro verwenden:

    • Öffne den VBA-Editor mit ALT + F11.
    • Füge ein neues Modul hinzu (Einfügen > Modul).
    • Kopiere den folgenden Code in das Modul:
      Sub NullWert()
       Dim c As Range
       Dim laenge As Integer
       For Each c In Selection
           laenge = Len(c)
           If Not IsEmpty(c) And IsNumeric(c) Then
               c = String(10 - laenge, "0") & c
           End If
       Next c
      End Sub
    • Schließe den VBA-Editor und führe das Makro aus.

Häufige Fehler und Lösungen

  • Problem: Die Formatierung zeigt nicht die erwarteten führenden Nullen.

    • Lösung: Stelle sicher, dass die Zellen nicht als „Allgemein“ formatiert sind. Verwende das benutzerdefinierte Format oder eine Formel.
  • Problem: Das Makro funktioniert nicht wie erwartet.

    • Lösung: Überprüfe die Zeile If Not IsEmpty(c) And IsNumeric(c) Then und stelle sicher, dass die Auswahl tatsächlich Zahlen enthält.

Alternative Methoden

  • Formel zur Auffüllung mit Nullen: Du kannst auch die Funktion TEXT verwenden:

    =TEXT(A1, "00000")

    Dies füllt die Zahl in Zelle A1 mit führenden Nullen auf, sodass sie fünf Stellen hat.

  • Nullen vor Zahlen in einer Zelle hinzufügen: Um eine Zelle mit Nullen aufzufüllen, kannst du auch die &-Verknüpfung verwenden:

    ="00000" & A1

Praktische Beispiele

  1. PLZ mit Nullen auffüllen: Wenn du eine PLZ in Zelle A1 hast, die nur vier Stellen hat, kannst du die Formel verwenden:

    =TEXT(A1, "00000")
  2. Zahl auf vier Stellen auffüllen: Um eine Zahl in Zelle B1 auf vier Stellen aufzufüllen, benutze:

    =TEXT(B1, "0000")

Tipps für Profis

  • Nutze die TEXT-Funktion, um Zahlen in Text umzuwandeln, was besonders nützlich ist, wenn du führende Nullen beibehalten möchtest.
  • Achte darauf, dass das Ergebnis der TEXT-Funktion als Text behandelt wird. Wenn du das Ergebnis als Zahl benötigst, solltest du mit VBA arbeiten oder die Werte später umwandeln.

FAQ: Häufige Fragen

1. Wie kann ich mehrere Zellen gleichzeitig mit Nullen auffüllen? Du kannst alle Zellen markieren, die du auffüllen möchtest, und dann entweder das benutzerdefinierte Format oder das VBA-Makro anwenden.

2. Funktioniert das auch in älteren Excel-Versionen? Ja, die meisten Methoden funktionieren in Excel 2010 und neueren Versionen. Achte darauf, dass die VBA-Makros in Excel aktiviert sind.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige