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

Forumthread: Probleme bei Zahlenformat mit 3 Nachkommastellen

Probleme bei Zahlenformat mit 3 Nachkommastellen
01.07.2004 10:44:31
Oliver
Hallo,
ich habe seit zwei Tagen ein Problem, das eigentl. keines sein dürfte:
Ich habe eine VBA-Routine und möchte u.a. berechnete Ergebnisse in ein
Tabellenblatt schreiben. Das Ergebnis (MW) soll z.B. mit vier Nachkommastellen
in der Zelle dargestellt werden. Dazu verwende ich die einfache Anweisung:
Worksheets("Tab1").Range("A1") = Format(MW, "#,##0.0000")
Wenn "MW" nur mit einer oder zwei Nachkommastellen angezeigt werden soll, also Format(MW, "#,##0.0") bzw. Format(MW, "#,##0.00") funktioniert das Ganze tadellos. Aber wehe ich möchte drei oder eben vier Nachkommastellen angezeigt haben. Solange das berechnete Ergebnis eine Zahl "0,..." oder größer "1000,..." ist, haut das auch hin, aber bei einer Zahl von "1,..." bis "999,..." steht dann nur Schrott in der Zelle. Die Tausendertrennzeichen (ob mit oder ohne) spielen hierbei keine Rolle.
Ich habe versucht, eine Antwort auf dieses Problem im Internet zu finden. Scheinbar hatte dieses Problem noch keiner. Für jeglichen noch so kleinen Hinweis bin ich sehr dankbar.
Anzeige

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Probleme bei Zahlenformat mit 3 Nachkommastellen
01.07.2004 10:46:42
Holger
hast Du die Zelle auch direkt formatiert? Notfalls stelle die Datei mal ins Netz.
mfg Holger
AW: Probleme bei Zahlenformat mit 3 Nachkommastell
01.07.2004 13:11:27
Oliver
Die Zellen sind nicht direkt formatiert und somit als "Standard" formatiert. Soweit ich weiss, nutzt auch eine andere
Formatierung der Zellen nicht, denn die "1,123" unter VBA wird der Zelle als "1234" übergeben.
Die Datei ist abrufbar unter:
https://www.herber.de/bbs/user/7934.xls
Anzeige
AW: Probleme bei Zahlenformat mit 3 Nachkommastellen
01.07.2004 13:41:48
Holger
Hallo Oliver,
formatiere die Zellen auf Standard und erweitere den Code um *1:

Sub test()
MW = 0.12346
Worksheets("Tabelle1").Range("a1").Value = Format(MW, "##,##0.0000") * 1
MW = 1.12346
Worksheets("Tabelle1").Range("a2").Value = Format(MW, "##,##0.0000") * 1
MW = 1000.12346
Worksheets("Tabelle1").Range("a3").Value = Format(MW, "##,##0.0000") * 1
End Sub

Holger
Anzeige
AW: Probleme bei Zahlenformat mit 3 Nachkommastell
01.07.2004 13:59:27
Oliver
Hallo Holger,
brutal, das funktioniert ! Wie bist denn auf die "mal Eins" gekommen bzw. weisst Du, warum das ohne nicht funktioniert?
In jedem Fall einen sakrischen Dank.
AW: Probleme bei Zahlenformat mit 3 Nachkommastell
01.07.2004 14:20:24
Holger
ich nutze die *1 oft. Sowas wie textboxen, format-Fkt,... erzeugen Texte. Da habe ich oft Ärger mit gehabt. Durch *1 wird eine Zahl erzeugt und da gibt es weniger Ärger.
mfg Holger
Anzeige
;

Forumthreads zu verwandten Themen

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

Probleme bei Zahlenformat mit 3 Nachkommastellen


Schritt-für-Schritt-Anleitung

  1. Zelle formatieren: Stelle sicher, dass die Zellen, in die Du Deine Werte schreiben möchtest, auf "Standard" formatiert sind.

  2. VBA-Code anpassen: Verwende den folgenden VBA-Code, um sicherzustellen, dass die Werte korrekt formatiert werden:

    Sub test()
       MW = 0.12346
       Worksheets("Tabelle1").Range("A1").Value = Format(MW, "##,##0.0000") * 1
       MW = 1.12346
       Worksheets("Tabelle1").Range("A2").Value = Format(MW, "##,##0.0000") * 1
       MW = 1000.12346
       Worksheets("Tabelle1").Range("A3").Value = Format(MW, "##,##0.0000") * 1
    End Sub
  3. Werte testen: Führe den Code aus und überprüfe, ob die Zellen die Werte nun korrekt mit drei Nachkommastellen anzeigen.


Häufige Fehler und Lösungen

  • Problem: Die Zahl wird nicht korrekt angezeigt, sondern als "Schrott".

    • Lösung: Stelle sicher, dass die Zellen auf "Standard" formatiert sind. Verwende die Multiplikation mit 1 (* 1), um sicherzustellen, dass die Werte als Zahlen und nicht als Text behandelt werden.
  • Problem: Verwendung des falschen Zahlenformats.

    • Lösung: Achte darauf, dass Du das richtige Format in der Format-Funktion verwendest. Für drei Nachkommastellen sollte es "##,##0.0000" sein.

Alternative Methoden

  • Excel-Formatierung: Du kannst die Zellen auch manuell formatieren, indem Du die Zelle auswählst, mit der rechten Maustaste klickst und "Zellen formatieren" auswählst. Wähle dann "Zahl" und setze die Nachkommastellen auf 3.
  • Excel VBA Zufallsbereich: Wenn Du zufällige Werte mit Nachkommastellen generieren möchtest, kannst Du den Rnd-Befehl in Kombination mit dem Format-Befehl verwenden:

    Sub Zufallszahlen()
       Dim i As Integer
       For i = 1 To 10
           Worksheets("Tabelle1").Cells(i, 1).Value = Format(Rnd() * 1000, "##,##0.0000")
       Next i
    End Sub

Praktische Beispiele

  • Beispiel 1: Generiere eine Zahl mit 3 Dezimalstellen:

    Dim MW As Double
    MW = 123.456789
    Worksheets("Tabelle1").Range("A1").Value = Format(MW, "##,##0.000")
  • Beispiel 2: Um Werte aus einer Berechnung zu formatieren:

    Dim Ergebnis As Double
    Ergebnis = 10 / 3
    Worksheets("Tabelle1").Range("A2").Value = Format(Ergebnis, "##,##0.000")

Tipps für Profis

  • Vermeide Textfehler: Bei der Verwendung von Textboxen oder anderen Steuerelementen kann es zu Problemen mit dem Zahlenformat kommen. Nutze * 1, um sicherzustellen, dass die Eingaben als Zahlen interpretiert werden.
  • Debugging: Wenn Du Probleme mit dem VBA-Code hast, setze Haltepunkte oder nutze Debug.Print, um den Wert von Variablen während der Ausführung zu überprüfen.

FAQ: Häufige Fragen

1. Warum funktioniert das Formatieren mit drei Nachkommastellen manchmal nicht?
Das Problem kann daran liegen, dass die Zelle nicht korrekt formatiert ist oder die Zahl als Text behandelt wird. Verwende die Multiplikation mit 1, um sicherzustellen, dass die Zahl korrekt interpretiert wird.

2. Wie kann ich sicherstellen, dass meine Zufallszahlen auch Nachkommastellen haben?
Nutze den Rnd-Befehl in Kombination mit der Format-Funktion, um Zufallszahlen mit den gewünschten Nachkommastellen zu generieren.

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