importieren

argh wieder ne frage, wieder wegen der if-schleife: ich will jetzt vb sagen, wenn x.text leer ist, dann...
mach ich das mit if IsMissing oder mit if IsEmpty?
 
damit:
Code:
if txt.text = "" then


lt. MSDN:
IsEmpty-Funktion
Gibt einen Wert vom Typ Boolean zurück, der angibt, ob eineVariable initialisiert wurde.
also geht das damit nicht.


also

if txt.text <> "" then
msgbox "textbox ist nicht leer"
end if

oder

if txt.text = "" then
msgbox "textbox ist leer
end if
 
wieder eine frage, wenn ich einen overflow error hab, wie kann ich gegen diesen vorgehen?
 
Zuletzt bearbeitet:
hast du vielleicht versucht, einen long wert in einen integer wert zu packen?
oder integer nach short? oder evtl string mit alphanummerischen werten nach zahlenwerte?
 
Code:
Dim a1 As Double
Dim b1 As Double
Dim g1 As Double
Dim c1 As Double
Dim e1 As Double
Dim f1 As Double
Dim x1 As Double
Public Sub f_click()
If IsNumeric(a.Text) Then
a1 = CDbl(a.Text)
Else
MsgBox ("Der Stundensatz wurde nicht angegeben")
End If
If IsNumeric(b.Text) Then
b1 = CDbl(b.Text)
Else
MsgBox ("Der Prozentsatz der Behandlungpflege wurde nicht angegeben")
End If
If IsNumeric(c.Text) Then
c1 = CDbl(c.Text)
Else
MsgBox ("Die Anzahl der Stunden wurde nicht angegeben")
End If
If IsNumeric(g.Text) Then
g1 = CDbl(g.Text)
End If
x1 = CDbl(x)
If (d.Text = "") Then
x1 = 0
GoTo berechnung:
Else: GoTo weiter:
End If
weiter: If (d.Text < 0) Then
MsgBox ("Als Pflegestufen können nur 0 bis 3+ eingetragen werden")
GoTo ftext0:
Else: GoTo weiter2:
End If
weiter2: If (d.Text = "0") Then
x1 = 0
GoTo berechnung:
Else: GoTo weiter3:
End If
weiter3: If (d.Text = "1") Then
x1 = 384 / 30
GoTo berechnung:
Else: GoTo weiter4:
End If
weiter4: If (d.Text = "2") Then
x1 = 921 / 30
GoTo berechnung:
Else: GoTo weiter5:
End If
weiter5: If (d.Text = "3") Then
x1 = 1432 / 30
GoTo berechnung:
Else: GoTo weiter6:
End If
weiter6: If (d.Text = "3+") Then
x1 = 1918 / 30
GoTo berechnung:
Else: GoTo weiter7:
End If
weiter7: If (d.Text > 3) Then
MsgBox ("Als Pflegestufen können nur 0 bis 3+ eingetragen werden")
GoTo ftext0:
End If
berechnung: ergebnis = a1 * (c1 - e1) * (g1 / (c1 * 60)) - x1
If (ergebnis < 0) Then
ftext0: f.Text = 0
Else
f.Text = ergebnis
End If
End Sub
Alle Variablen wurden als Doubles deklariert und im Code ist es eigentlich auch bei Doubles geblieben, aber wenn jedes Textfeld leer bleibt zeigt VB einen Overflow-Error an. Kann mir jemand sagen woran das liegt?
 
Zurück