Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Punkt statt Komma in Zahlen

Punkt statt Komma in Zahlen
07.03.2007 09:51:36
matthias
Hallo,
ich benötige für eine SQL-Abfrage das Zahelformat in 0.00 statt 0,00.
Trotz dieses Befehls
dblWgtV = format(CDbl(Contr.tb_WgtValue.Value) / 100, "0.00")
und der Dimensionierung als String, wird dennoch ein Komma geliefert.
Was mache ich falsch?
Danke.
Matthias
Anzeige

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

Betreff
Datum
Anwender
Anzeige
AW: Punkt statt Komma in Zahlen
07.03.2007 10:18:00
IngGi
Hallo Matthias,
deine Variable dblWgtV ist offensichtlich eine Double-Variable. Mit "Format()" wandelst du den Doublewert in einen Text mit Punkt als Dezimaltrennzeichen um. Diesen Text übergibst du dann an eine Double-Variable. In anderen Programmiersprachen würdest du dafür einen Laufzeitfehler kassieren (sowas wie "Typen unverträglich"). VBA wandelt "gnädigerweise" deinen Text wieder in einen Doublewert um. Dann hast du aber eben wieder einen Wert statt eines Textes und logischerweise auch wieder das ganz normale Dezimaltrennzeichen, wie in den Exceloptionen bzw. im Betriebssystem eingestellt. Verwende statt dessen eine Stringvariable.
Gruß Ingolf
Anzeige
oder so! :-)..o.T.
07.03.2007 10:21:00
Oberschlumpf
AW: Punkt statt Komma in Zahlen
07.03.2007 10:24:15
matthias
Hallo Ingolf,
wie ich schrieb, habe ich die Variable als String dimensioniert und dennoch das Komma.
AW: Punkt statt Komma in Zahlen
07.03.2007 10:20:00
Oberschlumpf
Hi Matthias
Der "." in der Format-Funktion ist hier nötig, weil es die Syntax für Format erfordert.
Aber das Anzeigen eines formatierten Wertes durch Format(...) ist abhängig von den Ländereinstellungen.
Und die Ländereinstellungen "kümmern" sich nicht darum, ob der Wert als Zahl oder als String dimensioniert wurde.
(ob das alles so stimmt, weiß ich nicht, da nur Überlegung - hört sich aber logisch an, finde ich :-) )
Vielleicht kommst du weiter, wenn du über Einstellung/Systemsteuerung/Ländereinstellung das Komma als Trennzeichen durch den Punkt ersetzt.
Ich weiß, dass ist nicht DIE Lösung, aber was anderes weiß ich auch gerade nicht.
Oder vllt doch.
Versuch es mit der Replace-Funktion. Dann musst du (vllt) nichts an den Ländereinstellungen ändern.
Oder jemand anderes kennt eine elegantere Lösung.
Konnte ich helfen?
Ciao
Thorsten
Anzeige
AW: Punkt statt Komma in Zahlen
07.03.2007 10:25:00
matthias
Hi Thorsten,
Replace ist da wohl die beste Variante. Danke.
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige

Infobox / Tutorial

Punkt statt Komma in Excel-Zahlenformaten


Schritt-für-Schritt-Anleitung

Um in Excel das Dezimaltrennzeichen von Komma auf Punkt umzustellen, gehe wie folgt vor:

  1. Öffne Excel und gehe zu den Optionen:

    • Klicke auf „Datei“ und dann auf „Optionen“.
  2. Anpassen der Regionaleinstellungen:

    • Wähle im Menü „Erweitert“ die Kategorie „Bearbeitungsoptionen“.
    • Deaktiviere die Option „Systemtrennzeichen verwenden“.
    • Setze den Punkt (.) als Dezimaltrennzeichen.
  3. Einstellungen speichern und Excel neu starten.

  4. Formatierung von Zahlen:

    • Wenn du eine Zahl mit Punkt als Dezimaltrennzeichen formatieren möchtest, kannst du die Format-Funktion verwenden:
      =TEXT(A1; "0.00")
    • Achte darauf, dass die Zelle A1 die Zahl enthält, die du formatieren möchtest.

Häufige Fehler und Lösungen

  • Fehler: Zahlen werden weiterhin mit Komma angezeigt:

    • Stelle sicher, dass du die Option „Systemtrennzeichen verwenden“ deaktiviert hast. Wenn das Problem weiterhin besteht, überprüfe die Regionaleinstellungen deines Betriebssystems.
  • Fehler: Text wird in eine Zahl umgewandelt:

    • Wenn du eine Zahl in Text umwandelst, stelle sicher, dass du eine String-Variable verwendest. In VBA könnte das so aussehen:
      Dim dblWgtV As String
      dblWgtV = Format(CDbl(Contr.tb_WgtValue.Value) / 100, "0.00")

Alternative Methoden

Wenn du keine Änderungen an den regionalen Einstellungen vornehmen möchtest, kannst du die Replace-Funktion nutzen, um Kommas durch Punkte zu ersetzen:

Dim strWgtV As String
strWgtV = Replace(Format(CDbl(Contr.tb_WgtValue.Value) / 100, "0,00"), ",", ".")

Dies wandelt die Zahl korrekt um, ohne die regionalen Einstellungen ändern zu müssen.


Praktische Beispiele

  1. Beispiel für die Verwendung von Format:

    • Um eine Zahl in der Zelle A1 in das Format 0.00 zu bringen:
      =TEXT(A1; "0.00")
  2. Beispiel für VBA mit Replace:

    • In einem VBA-Modul kannst du so arbeiten:
      Dim myValue As String
      myValue = Replace(Format(1234.56, "0,00"), ",", ".")
      MsgBox myValue ' Gibt 1234.56 aus

Tipps für Profis

  • Verwende die Excel-Funktion TEXT, um sicherzustellen, dass Zahlen immer in dem gewünschten Format angezeigt werden, unabhängig von den Regionaleinstellungen.
  • Beachte die Ländereinstellungen im Betriebssystem, da diese direkten Einfluss auf die Darstellung von Zahlen in Excel haben können.
  • Für SAP-Nutzer: Wenn du SAP verwendest, kann es nötig sein, die Punkt- und Komma-Einstellungen direkt in SAP zu konfigurieren. Suche nach „SAP Punkt statt Komma einstellen“ in den SAP-Einstellungen.

FAQ: Häufige Fragen

1. Kann ich das Dezimaltrennzeichen nur für eine bestimmte Excel-Datei ändern?
Nein, die Änderung des Dezimaltrennzeichens betrifft alle Excel-Dokumente und wird durch die regionalen Einstellungen deines Betriebssystems bestimmt.

2. Was passiert, wenn ich eine Datei mit anderen Trennzeichen öffne?
Excel wird versuchen, die Zahlen gemäß den aktuellen Einstellungen darzustellen. Es kann zu Missverständnissen kommen, wenn die Datei in einem anderen regionalen Format erstellt wurde.

3. Wie ändere ich das Dezimaltrennzeichen in Excel für eine VBA-Anwendung?
In VBA kannst du die Format-Funktion in Verbindung mit einer String-Variable verwenden, um sicherzustellen, dass das Dezimaltrennzeichen wie gewünscht angezeigt wird.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige