Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
928to932
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
928to932
928to932
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Problem mit Zahlenformat

Problem mit Zahlenformat
21.11.2007 08:17:53
ray
Hallo,
nachfolgender Code funzt nicht richtig. Wenn ich Beträge eingebe, die größer als 999,99 sind dann greift die Routine Ganzzahl ein.

Private Function IstGanzzahl(tbEur As String) As Boolean
If IsNumeric(tbEur) And _
InStr(tbEur, ".") = 0 Then
IstGanzzahl = True
Else
IstGanzzahl = False
End If
End Function


sub()
frmUez.tbEur = Format(tbEur, "##,##0.00")
dat3 = Date + 3
'############ CHK ob Felder richtig ausgefüllt sind START ###############
If IstGanzzahl(frmUez.tbEur) = False Then 'function oben gehört dazu
MsgBox "Betrag im falschen Format oder nicht als Zahl eingeben.", vbExclamation
Exit Sub
End If
'############ CHK ob Felder richtig ausgefüllt sind ENDE ###############
End Sub


Was mahc ich falsch?
Viele vergrippte Grüße aus HH
ray

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Problem mit Zahlenformat
21.11.2007 08:32:00
Mag
hi,
mit 'Format(tbEur, "##,##0.00")', speziell '##,##' fügst du 1000er Punkt ein, der dann zum Resultat 'nicht Ganzzahl' führt.
Gruss

AW: Problem mit Zahlenformat
21.11.2007 08:38:12
Mag
MsgBox Format(1099.9, "##,##0.00"): ' 1.099,9'
MsgBox Format(199.9, "##,##0.00"): ' 199,9'
den Punkt abfragen ist dann auch nicht richtig ...
Gruss

AW: Problem mit Zahlenformat
21.11.2007 08:44:00
Mag
... z.B. so?

Private Function IstGanzzahl2(tbEur As String) As Boolean
If Round(CDbl(tbEur), 0) = CDbl(tbEur) Then IstGanzzahl2 = True Else IstGanzzahl2 = False
End Function


Gruss

AW: Problem mit Zahlenformat
21.11.2007 10:51:00
ray
Hallo,
das:

Private Function IstGanzzahl2(tbEur As String) As Boolean
If Round(CDbl(tbEur), 0) = CDbl(tbEur) Then IstGanzzahl2 = True Else IstGanzzahl2 = False
End Function


ermöglicht jetzt Zahlen größer 999,99 aber nicht mehr Zahlen mit Komma z. B. 1,2 oder 999,99.
Gruß ray

Anzeige
AW: Problem mit Zahlenformat
21.11.2007 11:30:20
Mag
...
Sub ttt()
MsgBox IstGanzzahl2(Format(999.9, "0.0")) 'Falsch, weil Zahl 999,9 keine Ganzzahl
MsgBox IstGanzzahl2("999.9") 'Wahr, weil Cdbl("999.9") 9999 ist
End Sub



Private Function IstGanzzahl2(tbEur As String) As Boolean
If Round(CDbl(tbEur), 0) = CDbl(tbEur) Then IstGanzzahl2 = True Else IstGanzzahl2 = False
End Function


?

Ich verstehe Dich nicht
21.11.2007 11:41:00
ray
Danke für Deine Mühe,
aber ich verstehe nicht, was Du mir sagen willst? Ich habe den Code doch getauscht und es funzt nicht.
Bin ratlos...
Gruß Ray

Anzeige
AW: Ich verstehe Dich nicht
21.11.2007 11:54:54
Mag
hmm,
Option Explicit
Sub ttt()
Dim strMy As String, tbEur As Double
tbEur = 1.2
strMy = Format(tbEur, "##,##0.00")
MsgBox strMy
MsgBox IstGanzzahl2(strMy)
'1.2: Falsch
'9999.9: Falsch
'1: Wahr
'9999: Wahr
End Sub



Private Function IstGanzzahl2(tbEur As String) As Boolean
If Round(CDbl(tbEur), 0) = CDbl(tbEur) Then IstGanzzahl2 = True Else IstGanzzahl2 = False
End Function


Kopiere das und probier es aus, verändere für tbEur den Wert und sage mir was falsch ausgegeben wird.
Gruss

Anzeige

301 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige