Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Fehlende "0" am Anfang ? Mit Beispiel

Fehlende "0" am Anfang ? Mit Beispiel
02.03.2006 15:13:50
Fabio
Hallo zusammen,
danke der Tips und Hilfen im Forum habe ich das VBA-Script hinbekommen.
Problem :
Er sucht nach dem "letzten Wert der Spalte 9"
und da steht im Beispiel : 060118
Bei Ausführen des Makros findet er auch den Wert - der heisst aber plötzlich 60118".
Wie bringe ich Excel bei, das der sowohl beim kopieren als auch beim "Makroausführen" die "0" behält?
Danke!
Fabio
https://www.herber.de/bbs/user/31572.xls
Anzeige

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Fehlende "0" am Anfang ? Mit Beispiel
02.03.2006 15:28:13
Reinhard
Hi Fabio,
im Editor Einfügen Modul, dort gehört der Code typischerweise hin, den in DieseArbeitsmappe löschen.
Option Explicit

Sub letzte_zeile_kopieren()
Dim finde
Rows(Range("A65535").End(xlUp).Row).Copy
Rows(Range("A65535").End(xlUp).Row + 1).Insert
Rows(Range("A65535").End(xlUp).Row).Select
finde = Cells(ActiveSheet.UsedRange.SpecialCells(xlLastCell).Row, 9).Text
Application.Dialogs(xlDialogFormulaReplace).Show finde
End Sub

Gruß
Reinhard
ps: Ich freue mich über eine Rückmeldung ob diese Antwort hilfreich war oder nicht..
Anzeige
AW: Fehlende "0" am Anfang ? Mit Beispiel
02.03.2006 15:37:50
IngGi
Hallo Fabio,
du musst unterscheiden zwischen Zahlen als Text und Zahlen als Wert. Zahlen als Wert können keine führenden Nullen haben, das wäre sinnlos. In deiner Datei, in Zelle I19 steht 60118 als Wert drin. Die führende Null ist nur optisch, infolge des eingestellten Zahlenformates da. Der tatsächliche Inhalt der Zelle ist aber 60118 als Wert, ohne führende Null. Wenn du den Wert 60118 siebenstellig mit führender Null in eine Variable einlesen willst, musst du dazu eine Stringvariable nehmen und den Wert 60118 unter Verwendung des Zahlenformates "0000000" in einen String umwandeln. Also:
Sub einlesen()
Dim strMeinText As String
strMeinText = Format(Range("I19"), "0000000")
End Sub
Gruß Ingolf
Anzeige
Ändert den Wert nicht ?
02.03.2006 16:05:33
Fabio
Hallo zusammen,
Danke für die schnelle Info's.
a) habe ich das ganze jetzt in ein Modul gepackt
B) lautet das jetzt wie folgt :

Sub letzte_zeile_kopieren()
Dim strMeinText As String
strMeinText = Format(Range("I19"), "0000000")
Dim finde
Rows(Range("A65535").End(xlUp).Row).Copy
Rows(Range("A65535").End(xlUp).Row + 1).Insert
Rows(Range("A65535").End(xlUp).Row).Select
finde = Cells(ActiveSheet.UsedRange.SpecialCells(xlLastCell).Row, 27).Text
Application.Dialogs(xlDialogFormulaReplace).Show finde
End Sub

Nun das Problem : Der "Wert 060118" steht nun (weil ich meine Tabelle geändert habe in der Spalte AA) - wie muss ich das Script anpassen, damit der dann immer das Format auf das Zahlenformates "0000000" ändert ?
Danke !
Fabio
die geänderte Datei: https://www.herber.de/bbs/user/31577.xls
Anzeige
AW: Ändert den Wert nicht ?
02.03.2006 16:27:57
IngGi
Hallo Fabio,
so müßte es gehen:

Sub letzte_zeile_kopieren()
Rows(Range("A65536").End(xlUp).Row).Copy Destination:=Range("A65536").End(xlUp).Offset(1, 0)
Cells(Range("A65536").End(xlUp).Row, 27).NumberFormat = "000000"
End Sub

Gruß Ingolf
Anzeige
Kein Fenster öffnet sich mehr
02.03.2006 16:33:14
Fabio
Hei,
Danke - jetzt scheint es das richtige Format zu sein - aber das "Suchen/Ersetzen" Fenster mit der "vorbelegung" öffnet sich jetzt nicht mehr :-(
Fabio
AW: Kein Fenster öffnet sich mehr
02.03.2006 16:45:57
IngGi
Hallo Fabio,
das hab ich übersehen. Diesen Teil muss man natürlich auch noch anhängen. Komplett sieht das dann so aus:

Sub letzte_zeile_kopieren()
Rows(Range("A65536").End(xlUp).Row).Copy Destination:=Range("A65536").End(xlUp).Offset(1, 0)
Cells(Range("A65536").End(xlUp).Row, 27).NumberFormat = "000000"
Application.Dialogs(xlDialogFormulaReplace).Show _
Format(Cells(Range("A65536").End(xlUp).Row, 27), "000000")
End Sub
Gruß Ingolf
Anzeige
Das war es - vielen Dank !
03.03.2006 08:40:33
Fabio
Vielen Dank - jetzt funktioniert es so wie es sollte !
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Anzeige

Infobox / Tutorial

Fehlende "0" am Anfang in Excel anzeigen


Schritt-für-Schritt-Anleitung

Um sicherzustellen, dass Excel die "0" am Anfang einer Zahl korrekt anzeigt, kannst du folgende Schritte befolgen:

  1. Zellenformat anpassen: Wähle die Zelle oder den Bereich aus, in dem die Zahl steht. Rechtsklicke und wähle „Zellen formatieren“.
  2. Benutzerdefiniertes Format: Wähle „Benutzerdefiniert“ und gebe das Format 000000 ein, um sicherzustellen, dass die Zahl immer mit sechs Ziffern angezeigt wird, auch wenn sie mit "0" beginnt.
  3. VBA-Skript verwenden: Wenn du oft mit solchen Zahlen arbeitest, kannst du ein VBA-Skript verwenden, um die Formatierung automatisch anzuwenden (siehe Beispiel unten).

Häufige Fehler und Lösungen

  • Excel entfernt die "0" am Anfang: Dies passiert, wenn die Zahl als Wert und nicht als Text gespeichert wird. Stelle sicher, dass die Zelle als Text formatiert ist oder verwende das Benutzerdefinierte Format.

  • VBA ändert die letzte Zahl in 0: Achte darauf, dass du die richtige Formatierung im VBA-Skript verwendest. Beispielsweise:

    Cells(Range("A65536").End(xlUp).Row, 27).NumberFormat = "000000"
  • Suchen/Ersetzen funktioniert nicht: Wenn das Dialogfenster nicht geöffnet wird, stelle sicher, dass der Code korrekt ist. Zum Beispiel:

    Application.Dialogs(xlDialogFormulaReplace).Show _
    Format(Cells(Range("A65536").End(xlUp).Row, 27), "000000")

Alternative Methoden

  • Textformatierung: Vor dem Eingeben einer Zahl kannst du ein Apostroph (') vor die Zahl setzen. Zum Beispiel: '060118 wird als „060118“ angezeigt.
  • Text in Spalte: Wenn du eine ganze Spalte mit Zahlen hast, die mit "0" beginnen sollen, kannst du die Funktion „Text in Spalten“ verwenden, um die Formatierung in Excel zu ändern.

Praktische Beispiele

Hier sind einige praktische Beispiele, wie du die "0" am Anfang in Excel anzeigen kannst:

  • Postleitzahlen: In Deutschland beginnen viele Postleitzahlen mit "0". Wenn du „01234“ eingibst, sollte die Zelle das Format 00000 haben.
  • Telefonnummern: Telefonnummern, die mit „0“ beginnen, sollten ebenfalls als Text oder im passenden Zahlenformat eingegeben werden.

    Sub telefonnummer_formatieren()
      Cells(1, 1).NumberFormat = "000000000"
    End Sub

Tipps für Profis

  • Verwende VBA für Automatisierung: Wenn du regelmäßig Zahlen mit "0" am Anfang verwendest, erstelle ein VBA-Makro, das automatisch die Formatierung anpasst.
  • Zahlen als Text speichern: Wenn du eine Importdatei hast, stelle sicher, dass alle Zahlen als Text gespeichert werden, um Probleme zu vermeiden.
  • Regelmäßige Überprüfung: Überprüfe regelmäßig, ob die Formatierung deiner Daten korrekt ist, insbesondere wenn du Daten importierst oder exportierst.

FAQ: Häufige Fragen

1. Wie kann ich sicherstellen, dass Excel nicht die "0" am Anfang entfernt?
Du kannst die Zellen als Text formatieren oder ein benutzerdefiniertes Zahlenformat wie 000000 verwenden.

2. Was passiert, wenn ich Zahlen mit "0" am Anfang importiere?
Excel entfernt in der Regel die führenden Nullen. Stelle sicher, dass die Quelldatei die Zahlen als Text speichert oder wähle beim Import die richtige Formatierung aus.

3. Gibt es eine Möglichkeit, eine ganze Spalte auf einmal zu formatieren?
Ja, du kannst die gesamte Spalte auswählen und das Zellenformat ändern oder ein VBA-Skript verwenden, um die Formatierung für alle Zellen anzuwenden.

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