Problem mit on error

Informationen und Beispiele zu den hier genannten Dialog-Elementen:
MsgBox
Bild

Betrifft: Problem mit on error
von: Basti
Geschrieben am: 24.02.2005 08:00:06
Hallo nochmal,
habe ein problem mit dem einfügen des on error Befehls in diesen Code:


Private Sub txtAbreise_Change()
    On Error GoTo FehlerDatum
    If Len(txtAbreise.Value) = 8 And Len(txtAnreise.Value) = 8 Then
        txtTage = DateValue(txtAbreise) - DateValue(txtAnreise)
    End If
    If Len(txtAbreise.Value) = 8 And Len(txtAnreise.Value) = 8 And txtPreisÜN <> "" Then
        txtPreisGesamt = txtTage * txtPreisÜN
        txtPreisGesamt = Format(txtPreisGesamt, "#####,##0.00")
    End If
End Sub

Sub FehlerDatum()
MsgBox "Geben Sie das Datum im Format TT.MM.JJ ein !", 48, _
"Falsche Eingabe"
End Sub
Wenn ich das ganze jetzt laufen lassen und es entsteht ein Fehler, sagt er mir
Sprungmarke nicht definiert. Aber Sub ist im selben Codefenster angelegt.
Woran liegt das?
MfG
Basti
Bild

Betrifft: AW: Problem mit on error
von: Detlef
Geschrieben am: 24.02.2005 08:02:05
Hallo,
du musst die fehlersprungmarke im gleichen sub laufen lassen
Gruß
Detlef
Bild

Betrifft: AW: Problem mit on error
von: Jan
Geschrieben am: 24.02.2005 08:03:24
Hi Basti,

Nimm den Code so:

Private Sub txtAbreise_Change()
    On Error GoTo FehlerDatum
    If Len(txtAbreise.Value) = 8 And Len(txtAnreise.Value) = 8 Then
        txtTage = DateValue(txtAbreise) - DateValue(txtAnreise)
    End If
    If Len(txtAbreise.Value) = 8 And Len(txtAnreise.Value) = 8 And txtPreisÜN <> "" Then
        txtPreisGesamt = txtTage * txtPreisÜN
        txtPreisGesamt = Format(txtPreisGesamt, "#####,##0.00")
    End If
FehlerDatum:
MsgBox "Geben Sie das Datum im Format TT.MM.JJ ein !", 48, _
"Falsche Eingabe"
End Sub

Jan
Bild

Betrifft: AW: Problem mit on error
von: Werner Oertli
Geschrieben am: 24.02.2005 08:04:45
Nochmal Guten Morgen Basti

Private Sub txtAbreise_Change()
    On Error GoTo FehlerDatum
    If Len(txtAbreise.Value) = 8 And Len(txtAnreise.Value) = 8 Then
        txtTage = DateValue(txtAbreise) - DateValue(txtAnreise)
    End If
    If Len(txtAbreise.Value) = 8 And Len(txtAnreise.Value) = 8 And txtPreisÜN <> "" Then
        txtPreisGesamt = txtTage * txtPreisÜN
        txtPreisGesamt = Format(txtPreisGesamt, "#####,##0.00")
    End If
Goto FINI
FehlerDatum:
MsgBox "Geben Sie das Datum im Format TT.MM.JJ ein !", 48, _
"Falsche Eingabe"
FINI:
End Sub

Die SprungMarke in der gleichen Sub definieren.
Gruss Werner
Bild

Betrifft: Danke, klappt wunderbar. (o.T.)
von: Sebastian
Geschrieben am: 24.02.2005 08:09:00
.
Bild

Betrifft: Danke für die Rückmeldung OT:-)
von: werner Oertli
Geschrieben am: 24.02.2005 08:12:13

Bild

Betrifft: AW: Problem mit on error
von: UweD
Geschrieben am: 24.02.2005 08:05:46
Hallo

so:


Private Sub txtAbreise_Change()
    On Error GoTo FehlerDatum
    If Len(txtAbreise.Value) = 8 And Len(txtAnreise.Value) = 8 Then
        txtTage = DateValue(txtAbreise) - DateValue(txtAnreise)
    End If
    If Len(txtAbreise.Value) = 8 And Len(txtAnreise.Value) = 8 And txtPreisÜN <> "" Then
        txtPreisGesamt = txtTage * txtPreisÜN
        txtPreisGesamt = Format(txtPreisGesamt, "#####,##0.00")
    End If
    Exit Sub 'Ende wenn keine Fehler
FehlerDatum:
    MsgBox "Geben Sie das Datum im Format TT.MM.JJ ein !", 48, _
        "Falsche Eingabe"
End Sub

Gruß UWeD
Bild

Betrifft: Exit ist beste Lösung, Jan hat immer F-Meld owT
von: Luc
Geschrieben am: 24.02.2005 09:03:47

 Bild

Beiträge aus den Excel-Beispielen zum Thema "Problem mit on error"