Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1524to1528
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
Inhaltsverzeichnis

Zahlenformat festlegen

Zahlenformat festlegen
26.11.2016 22:15:26
Gabi
Hallo zusammen,
ich habe ein Problem mit dem Zahlenformat.
Für meine Datei habe ich eine InputBox-Abfrage erstellt, worin Double-Werte (0,00) eingegeben werden sollen und entsprechend in einer "Telefonzelle" ausgegeben werden. Allerdings kann mit der Ausgabezelle nicht gerechnet werden, sobald das Format 0.00 eingegeben wird. Wie kann ich der InputBox denn sagen, dass sobald das Format 0.00 angegeben wird, eine Fehlermeldung erscheinen soll?
If lngZahl = ActiveSheet.Range(Telefonzelle.Address).Format("0.00") Then
MsgBox "0.00 ist nicht gültig! Bitte geben Sie das Format 0,00 ein."
End If

Ich habe es auf diesem Weg versucht. Aber sobald ich in die InputBox z.B. 1.2 eingebe, erscheint keine Fehlermeldung über meine MsgBox...
Ich bin dankbar über jede Idee.
Liebe Grüße
Gabi

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Zahlenformat festlegen
26.11.2016 22:48:41
AlterDresdner
Hallo Gabi,
reicht es, wenn einfach auf Zahl und kein Datum geprüft wird?
if not isnumeric(...) or isdate(...) then msgbox "geht nicht"
Den Test solltest Du aber gleich nach der Inputbox machen, bevor der Wert in eine Zelle übertragen wird.
Gruß der AlteDresdner
AW: Zahlenformat festlegen
26.11.2016 23:00:18
Gabi
Hallo AlteDresdner,
vielen Dank für die schnelle Antwort. Das ging ja flott :-) Allerdings geht das leider nicht, weil das Format 0.00 ja kein Datum ist und eine Zahl darstellt. Dieses Format würde also durch das Raster fallen. Mir geht es einfach um den . der da nicht sein darf. Kann man das unterbinden?
LG Gabi
Anzeige
AW: Zahlenformat festlegen
26.11.2016 23:53:36
fcs
Hallo Gabi,
für reine Zahleneingaben kannst die Application.InputBox verwenden.
Hier kann der Eingabe-Typ vorgegeben werden.
Ansonsten kannst du die Eingabe prüfen, ob 1. ein Punkt vorhanden und 2. die Eingabe eine Zahl ist.
Sub Zahleneingabe()
Dim varInput
varInput = Application.InputBox( _
prompt:="Bitte Wert für Telefonzelle eingeben" & vbLf _
& "(als Dezimalzeichen Komma verwenden!)", _
Title:="Zahleneingabe", _
Default:=0, _
Type:=1) 'Type = 1 --> nur Zahlenwerte zulässig
ActiveSheet.Range("Telefonzelle").Value = varInput
Eingabe:
varInput = InputBox("testeingabe Telefonzelle", "zahleneingabe")
If InStr(varInput, ".") > 0 Then
MsgBox "unzulässige Eingabe - Punkt nicht zulässig", vbOKOnly, "Eingabeprüfung"
GoTo Eingabe
Else
If IsNumeric(varInput) Then
ActiveSheet.Range("Telefonzelle").Value = CDbl(varInput)
Else
MsgBox "unzulässige Eingabe - keine Zahl", vbOKOnly, "Eingabeprüfung"
GoTo Eingabe
End If
End If
End Sub

Anzeige
Wenn 'lngZahl' tatsächlich vom DatenTyp 'Long' ...
27.11.2016 00:20:14
Luc:-?
…sein sollte, Gabi,
kannst du eh nicht erwarten, dass eine Übereinstimmung mit einer DezimalZahl erreicht wdn kann. Deshalb hat Franz die Variable auch umbenannt, obwohl das keinerlei Einfluss auf den realen DatenTyp hat. Gewöhnt euch den Pseudo-UN-Quatsch besser ab, führt nur zu Missverständnissen!
Gruß, Luc :-?
Besser informiert mit …
AW: Zahlenformat festlegen
27.11.2016 21:31:56
AlterDresdner
Hallo Gabi,
man soll eben doch testen...
Wenn es nur um den Punkt geht:
If InStr(1, a, ".") > 0 Then MsgBox "geht nicht"

wobei a das Ergebnis der Inputbox ist.
Gruß der AlteDresdner
Anzeige
AW: Zahlenformat festlegen
01.12.2016 22:59:57
Gabi
Hallo,
vielen Dank für die Nachrichten, fcs und AlteDresdner. Ich werde es die nächsten Tage testen.
LG Gabi

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige