Live-Forum - Die aktuellen Beiträge
Datum
Titel
23.04.2024 14:59:21
23.04.2024 14:47:39
23.04.2024 14:23:45
Anzeige
Archiv - Navigation
1500to1504
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
InputBox und Zahl mit Nachkommastellen
26.06.2016 14:06:02
Henner
Hallo zusammen,
ich möchte mit einer Inputbox eine Zahl mit mehreren Nachkommastellen in eine Zelle schreiben lassen. Gebe ich in der Inputbox die Zahl 1,08108003 ein, so wird die Zahl 108.108.003 in die Zelle geschrieben.
1. Warum ist das so?
2. Wie bekomme ich die Zahl 1,08108003 in die Zelle?
Besten Dank für Eure Hilfe, anbei noch eine Bsp Datei. Gruss Henner
https://www.herber.de/bbs/user/106539.xlsm

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

Betreff
Datum
Anwender
Anzeige
AW: InputBox und Zahl mit Nachkommastellen
26.06.2016 14:12:37
Hajo_Zi
als Laie braucht man kein Option Explicit, das machen nur Leute die sich mit VBA auskennen.
Option Explicit
Sub Schaltfläche1_Klicken()
Dim stxt As Double
stxt = InputBox("Eingabe einer Zahl mit mehreren Nachkommastellen:", "Eingabe", "1,08108003")
Range("A1").Value = stxt
End Sub


AW: InputBox und Zahl mit Nachkommastellen
26.06.2016 14:25:59
Henner
Hallo Hajo,
vielen Dank für die Lösung. Schönen Sonntag und Gruss, Henner

AW: InputBox und Zahl mit Nachkommastellen
26.06.2016 14:16:47
Daniel
Hi
das ist so, weil Excel und VBA "englisch" miteinander reden.
du gibst einen Textstring in eine Zelle ein.
Excel prüft dann, ob die Eingabe wie eine Zahl, ein Datum oder eine Formel aussieht und wenn ja, wird der Eingabetext entsprechen umgewandelt.
wenn das per VBA passiert, geht Excel bei dieser Prüfung immer davon aus, dass die Eingabe im Englsichen Zahlenformat erfolgt, dh mit Punkt als Dezimalzeichen und dem Komma als Tauserndertrennzeichen.
entsprechend wird auch deine Eingabe umgewandelt.
du müsstest also vor dem Schreiben in die Zelle im eigegebenen Text das Komma durch einen Punkt ersetzen.
Range("A1").Value = Replace(sTxt, ",", ".")
oder mit einer Umwandlungsfunktion den Wert in eine Zahl wandlen, diese Umwandlungsfunktion berücksichtigt das landestypische Format:
Range("A1").Value = CDbl(sTxt)
wobei diese Funktion einen Fehler erzeugt, wenn sich die Eingabe fehlerhaft ist und sich nicht in eine Zahl wandeln lässt.
Gruß Daniel

Anzeige
AW: InputBox und Zahl mit Nachkommastellen (ERL)
26.06.2016 14:25:20
Henner
Hallo Daniel,
vielen Dank für die Erklärung und den Lösungsvorschlag. Schönen Sonntag, Gruss Henner

309 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige