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

Forumthread: Nullen am Ende behalten

Nullen am Ende behalten
29.10.2007 16:16:27
andre
Hallo, habe folgendes Problem ich rechne mit Koordinaten am Ende sieht das Format immer so aus
z.B.
50.678040 für Breite
14.674600 für Länge
zum Schluss fasse ich die Tabelle in einer Spalte zusammen, was muss ich tun damit Excel die Nullen am Ende nicht kürzt ?
Ich habe schon versucht ein ' davor und oder dahinter zu setzen oder in Text zu formatieren...alles ohne Erfolg.
Gruß
Andre

Anzeige

15
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Format "#0.000000"
29.10.2007 16:24:53
NoNet
Hallo Andre,
markiere die Zellen und formatiere sie per "Format - Zellen - Zahlen - Benutzerdefiiniert - Typ : #0.000000 - OK".
Alternativ kannst Du auch das Symbol "Dezimalstelle hinzufügen" in der Symbolleiste so oft anklicekn, bis die Anzahl der Nachkommastellen stimmt.
Gruß, NoNet

Anzeige
AW: Format "#0.000000"
29.10.2007 16:57:00
andre
Ja, das Problem hatte ich damals anders gelöst da habe ich die Zellen vorher als Text formatiert und musste dann eine Stelle kürzen weil es nur 5 Stellen nach dem Komma sein sollten ich musste nicht mit den Zahlen rechnen daher ging das damals so aber diesmal muss ich vorher damit rechnen und einmal als Zahl formatiert hab ich jetzt Probleme beim zusammenfassen.
Gruß
Andre

Anzeige
AW: Format "#0.000000"
29.10.2007 16:35:28
andre
Das funktioniert leider nicht, beim zusammenfassen nimmt Excel da keine Rücksicht darauf.
Gruß
Andre

AW: Format "#0.000000"
29.10.2007 17:20:03
Tino
Hallo,
eine Idee wäre noch, du baust dir eigene Funktionen zusammen, lässt die Zellen als Text formatiert (außer die Ergebniszelle) aber gibst in der Ergebniszelle durch die eigene Funktion dass Ergebnis als Text zurück.
zBsp: zum addieren

Function Kor(Wert1 As String, wert2 As String) As String
Dim ergebnis As String
ergebnis = Format(Wert1 * 1 + wert2 * 1, "#.000000")
Kor = ergebnis
End Function


in Ergebniszelle


=Kor(A1;A2)


Gruss
Tino

Anzeige
AW: Format "#0.000000"
29.10.2007 17:47:00
andre
Hallo Tino,
danke für deinen Vorschlag aber damit muss ich zugeben habe ich noch so meine Schwierigkeiten mich da reinzudenken, es sind ein paar tausend Zeilen die da hin und her bewegt werden und mehrere Makros.
zusammengefasst wurde es weil ich so ( für mich ) am einfachsten das Ausgabeformat erreicht habe das ich brauche. Eben ist mir noch eine andere Idee gekommen aber das ist noch zu hoch für mich um es umzusetzen.
folgender Code speicherte das Ergebnis bisher ab...
er fügt am Anfang und Ende eine Zeile ein und splittet die Datei wenn größer als 3000 Zeilen auf in eine 2. oder 3. usw.
funktionierte bisher super.
um das Nullenproblem zu lösen müsste er so geändert werden das er nur Zeilen ausgibt in denen auch etwas steht (wenn ich es einfach so ersetzte bringt er mir einen Haufen Leerzeilen mit) und das Trennzeichen (;) verschwindet
Gruß Andre

Dim Bereich          As Object
Dim ZZeile            As Object
Dim Zelle              As Object
Dim strTemp         As String
Dim intNumber       As Integer
Const Dateiname      As String = "Datei"
Const Extension        As String = ".txt"
Const Trennzeichen  As String = ""
Const Kapselzeichen As String = ""
Set Bereich = ActiveSheet.UsedRange
Open myPath & Dateiname & "1" & Extension For Output As #1
Print #1, "Text1 einfügen"
For Each ZZeile In Bereich.Rows
intNumber = intNumber + 1
For Each Zelle In ZZeile.Cells
If InStr(1, Zelle.Text, Trennzeichen) > 0 Then
strTemp = strTemp & Kapselzeichen & CStr(Zelle.Text) & _
Kapselzeichen & Trennzeichen
Else
strTemp = strTemp & CStr(Zelle.Text) & Trennzeichen
End If
Next
strTemp = Left(strTemp, Len(strTemp) - 1)
Print #1, strTemp
strTemp = ""
If intNumber / 3000 = Int(intNumber / 3000) Then
Print #1, "Text2 einfügen"
Close #1
Open myPath & Dateiname & intNumber / 3000 + 1 & Extension For Output As #1
Print #1, "Text1 einfügen"
End If
Next
Print #1, "Text2 einfügen"
Close #1


Anzeige
AW: Format "#0.000000"
29.10.2007 17:59:00
Tino
Hallo,
versuche es mal, kann es aber nicht testen müsste sonst alles nachbauen.

Dim Bereich          As Object
Dim ZZeile            As Object
Dim Zelle              As Object
Dim strTemp         As String
Dim intNumber       As Integer
Const Dateiname      As String = "Datei"
Const Extension        As String = ".txt"
Const Trennzeichen  As String = ""
Const Kapselzeichen As String = ""
Set Bereich = ActiveSheet.UsedRange
Open myPath & Dateiname & "1" & Extension For Output As #1
Print #1, "Text1 einfügen"
For Each ZZeile In Bereich.Rows
intNumber = intNumber + 1
For Each Zelle In ZZeile.Cells
If Zelle = "" Then GoTo nächste:
If InStr(1, Zelle.Text, Trennzeichen) > 0 Then
strTemp = strTemp & Kapselzeichen & CStr(Zelle.Text) & _
Kapselzeichen & Trennzeichen
Else
strTemp = strTemp & CStr(Zelle.Text) & Trennzeichen
End If
nächste:
Next
strTemp = Left(strTemp, Len(strTemp) - 1)
Print #1, strTemp
strTemp = ""
If intNumber / 3000 = Int(intNumber / 3000) Then
Print #1, "Text2 einfügen"
Close #1
Open myPath & Dateiname & intNumber / 3000 + 1 & Extension For Output As #1
Print #1, "Text1 einfügen"
End If
Next
Print #1, "Text2 einfügen"
Close #1


Gruss
Tino

Anzeige
AW: Format "#0.000000"
29.10.2007 18:51:00
andre
schade, hat leider nicht funktioniert...habe die zeile mal markiert die wo es stehen bleibt

Dim Bereich          As Object
Dim ZZeile            As Object
Dim Zelle              As Object
Dim strTemp         As String
Dim intNumber       As Integer
Const Dateiname      As String = "Datei"
Const Extension        As String = ".txt"
Const Trennzeichen  As String = ""
Const Kapselzeichen As String = ""
Set Bereich = ActiveSheet.UsedRange
Open myPath & Dateiname & "1" & Extension For Output As #1
Print #1, "Text1 einfügen"
For Each ZZeile In Bereich.Rows
intNumber = intNumber + 1
For Each Zelle In ZZeile.Cells
If InStr(1, Zelle.Text, Trennzeichen) > 0 Then
strTemp = strTemp & Kapselzeichen & CStr(Zelle.Text) & _
Kapselzeichen & Trennzeichen
Else
strTemp = strTemp & CStr(Zelle.Text) & Trennzeichen
End If
Next
----->          strTemp = Left(strTemp, Len(strTemp) - 1)
Print #1, strTemp
strTemp = ""
If intNumber / 3000 = Int(intNumber / 3000) Then
Print #1, "Text2 einfügen"
Close #1
Open myPath & Dateiname & intNumber / 3000 + 1 & Extension For Output As #1
Print #1, "Text1 einfügen"
End If
Next
Print #1, "Text2 einfügen"
Close #1


Anzeige
AW: Format "#0.000000"
29.10.2007 19:06:47
Tino
Hallo,
dass weist darauf hin, es ist kein Text vorhanden wo er dass letzte Zeichen löschen kann!
Stell mal einen Ausschnitt deiner Tabelle hier rein.
Gruss
Tino

AW: Format "#0.000000"
29.10.2007 19:18:00
Tino
Hallo,
so müsste er die stelle überspringen, wenn kein Text vorhanden.

Dim Bereich          As Object
Dim ZZeile            As Object
Dim Zelle              As Object
Dim strTemp         As String
Dim intNumber       As Integer
Const Dateiname      As String = "Datei"
Const Extension        As String = ".txt"
Const Trennzeichen  As String = ""
Const Kapselzeichen As String = ""
Set Bereich = ActiveSheet.UsedRange
Open myPath & Dateiname & "1" & Extension For Output As #1
Print #1, "Text1 einfügen"
For Each ZZeile In Bereich.Rows
intNumber = intNumber + 1
For Each Zelle In ZZeile.Cells
If Zelle = "" Then GoTo nächste:
If InStr(1, Zelle.Text, Trennzeichen) > 0 Then
strTemp = strTemp & Kapselzeichen & CStr(Zelle.Text) & _
Kapselzeichen & Trennzeichen
Else
strTemp = strTemp & CStr(Zelle.Text) & Trennzeichen
End If
nächste:
Next
If strTemp = "" Then GoTo keinText:
strTemp = Left(strTemp, Len(strTemp) - 1)
Print #1, strTemp
strTemp = ""
If intNumber / 3000 = Int(intNumber / 3000) Then
Print #1, "Text2 einfügen"
Close #1
Open myPath & Dateiname & intNumber / 3000 + 1 & Extension For Output As #1
Print #1, "Text1 einfügen"
End If
keinText:
Next
Print #1, "Text2 einfügen"
Close #1


Gruss
Tino

Anzeige
AW: Format "#0.000000"
29.10.2007 20:07:00
andre
Hallo Tino,
ich seh schon Licht am Ende des Tunnels :) die Zahlen werden schonmal richtig abgespeichert
zwei Sachen sind aber noch, das letzte Zeichen einer jeden Zeile fehlt und es erscheint bevor es beendet ist ein Abfragefenster mit der Meldung: Was mit den Daten in der Zwischenablage geschehen soll
Gruß
Andre

Anzeige
AW: Format "#0.000000"
29.10.2007 20:25:46
Tino
Hallo,
mühsam ernährt sich dass Eichhörnchen, jetzt lassen wir mal
strTemp = Left(strTemp, Len(strTemp) - 1) weg, da diese Code-Zeile dass letzte Zeichen löscht.

Dim Bereich          As Object
Dim ZZeile            As Object
Dim Zelle              As Object
Dim strTemp         As String
Dim intNumber       As Integer
Const Dateiname      As String = "Datei"
Const Extension        As String = ".txt"
Const Trennzeichen  As String = ""
Const Kapselzeichen As String = ""
Set Bereich = ActiveSheet.UsedRange
Open myPath & Dateiname & "1" & Extension For Output As #1
Print #1, "Text1 einfügen"
For Each ZZeile In Bereich.Rows
intNumber = intNumber + 1
For Each Zelle In ZZeile.Cells
If Zelle = "" Then GoTo nächste:
If InStr(1, Zelle.Text, Trennzeichen) > 0 Then
strTemp = strTemp & Kapselzeichen & CStr(Zelle.Text) & _
Kapselzeichen & Trennzeichen
Else
strTemp = strTemp & CStr(Zelle.Text) & Trennzeichen
End If
nächste:
Next
If strTemp = "" Then GoTo keinText:
' strTemp = Left(strTemp, Len(strTemp) - 1)
Print #1, strTemp
strTemp = ""
If intNumber / 3000 = Int(intNumber / 3000) Then
Print #1, "Text2 einfügen"
Close #1
Open myPath & Dateiname & intNumber / 3000 + 1 & Extension For Output As #1
Print #1, "Text1 einfügen"
End If
keinText:
Next
Print #1, "Text2 einfügen"
Close #1


Gruss
Tino

Anzeige
AW: Format "#0.000000"
29.10.2007 20:48:00
andre
Jetzt passt das Format :))) nur die Speichermeldung ist noch da ... woher kommt die ? aber hauptsache es funktioniert erstmal so komm ich erstmal weiter
Danke !!!
Gruß
Andre

AW: Format "#0.000000"
29.10.2007 20:51:58
Tino
Hallo,
kann ich auch nicht sagen, habe solch eine Meldung
noch nie bekommen.
Gruss
Tino

Anzeige
AW: Format "#0.000000"
29.10.2007 21:26:00
andre
habs gefunden, hing noch im Speicher von einem Kopierbefehl im Makro
Danke nochmals! hast mir sehr geholfen da ich diesen Code noch mehrmals gebrauchen kann
Gruß
Andre
;

Forumthreads zu verwandten Themen

Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige
Anzeige

Infobox / Tutorial

Nullen am Ende in Excel Behalten


Schritt-für-Schritt-Anleitung

Um sicherzustellen, dass Excel die Nullen am Ende von Zahlen beibehält, kannst du die folgenden Schritte ausführen:

  1. Zellen markieren: Wähle die Zellen aus, die du formatieren möchtest.
  2. Zellen formatieren: Klicke mit der rechten Maustaste und wähle „Zellen formatieren“.
  3. Benutzerdefiniertes Format wählen: Gehe zu „Zahlen“ und wähle „Benutzerdefiniert“.
  4. Format eingeben: Gib im Typ-Feld #0.000000 ein. Damit wird Excel angewiesen, eine Zahl mit sechs Dezimalstellen anzuzeigen, auch wenn diese Nullen sind.
  5. Bestätigen: Klicke auf „OK“, um die Änderungen zu speichern.

Mit diesem Format wird Excel die Nullen am Ende nicht kürzen, sodass du die genaue Darstellung der Koordinaten wie z.B. 50.678040 und 14.674600 erhältst.


Häufige Fehler und Lösungen

  • Excel entfernt die Nullen: Wenn Excel die Nullen am Ende löscht, stelle sicher, dass du das korrekte Format wie oben beschrieben anwendest. Andernfalls könnte Excel die Zahlen als Fließkommazahlen interpretieren und die Nullen abschneiden.

  • 0 am Anfang wird gelöscht: Wenn du eine Null vor einer Zahl behalten möchtest, formatier die Zelle als Text oder verwende ein benutzerdefiniertes Format wie 0.000000. Alternativ kannst du auch ein einfaches Apostroph (') vor die Zahl setzen, um Excel zu zeigen, dass es sich um Text handelt.


Alternative Methoden

  1. Zellen als Text formatieren: Vor der Eingabe der Zahlen kannst du die Zellen als Text formatieren. So bleibt jede eingegebene Null erhalten. Beachte jedoch, dass du in diesem Fall keine mathematischen Berechnungen durchführen kannst.

  2. VBA-Funktion nutzen: Du kannst eine benutzerdefinierte Funktion verwenden, um die Nullen zu formatieren. Hier ist ein Beispiel, das du in ein Modul in Excel einfügen kannst:

    Function Kor(Wert1 As String, Wert2 As String) As String
       Dim ergebnis As String
       ergebnis = Format(Wert1 * 1 + Wert2 * 1, "#.000000")
       Kor = ergebnis
    End Function

    In der Ergebniszelle würdest du dann folgendes schreiben:
    =Kor(A1;A2)


Praktische Beispiele

  • Beispiel für Koordinaten: Wenn du eine Liste von Koordinaten hast, die du zusammenfassen willst, achte darauf, dass die Zellen im Format #0.000000 sind. So werden die Werte 50.678040 und 14.674600 richtig angezeigt.

  • Eingaben als Text: Wenn du eine Eingabe wie 000123 machst, stelle sicher, dass die Zelle als Text formatiert ist, um die führenden Nullen zu behalten. Du kannst dazu die Zelle vor der Eingabe als Text formatieren.


Tipps für Profis

  • Automatisierung mit Makros: Wenn du häufig mit Koordinaten arbeitest, könntest du ein Makro erstellen, das automatisch die Zellen formatiert und die Nullen beibehält. Dies spart Zeit und minimiert Fehler.

  • Verketten von führenden Nullen: Wenn du führende Nullen einfügen musst, kannst du die Funktion TEXT verwenden, um das gewünschte Format zu erreichen. Zum Beispiel:

    =TEXT(A1, "000000")

FAQ: Häufige Fragen

1. Warum verschwinden die Nullen am Ende meiner Zahlen?
Excel kürzt die Nullen, weil es die Zahlen als Fließkommazahlen interpretiert. Mit dem richtigen benutzerdefinierten Format kannst du das verhindern.

2. Wie kann ich sicherstellen, dass eine Null vor einer Zahl angezeigt wird?
Du kannst die Zellen als Text formatieren oder ein benutzerdefiniertes Format verwenden, das eine Null anzeigt. Ein Apostroph (') vor der Zahl hilft ebenfalls.

3. Funktioniert das auch in Excel 365?
Ja, die beschriebenen Methoden gelten für alle modernen Excel-Versionen, einschließlich Excel 365.

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