Errorhandler

27/10/2007 - 15:12 von Günter Gerold | Report spam
Hallo NG,

mein Errorhandler sieht im Moment so aus:

____________________________________________________________________________
____________
Private Sub Form_Open(Cancel As Integer)
On Error GoTo Form_Open_Error

'Hier der eigentliche Code

Ausgang:
On Error Resume Next
Exit Sub

Form_Open_Error:
Select Case Err.Number
Case 0
Resume Ausgang
Case Else
MsgBox "Ein Fehler ist aufgetreten: " & vbCrLf & _
"VBA Dokument " & "Form_frmStart" & vbCrLf & _
"Prozedur: Form_Open" & vbCrLf & _
"Zeile: " & Erl & vbCrLf & _
"Fehler-Nr.: " & Err.Number & vbCrLf & _
Err.Description, vbCritical
fncErrorLog ("Form_frmStart, Form_Open, Zeile:" & Erl & ", Nr.:"
& Err.Number & ", " & Err.Description)
Resume Ausgang
End Select
End Sub
____________________________________________________________________________
________________

in meiner Funktion fncErrorLog wird der Fehler in eine Tabelle geschrieben.

Um jetzt "hübschen" Code zu erzeugen, will ich die Fehlermeldung durch
MsgBox in die Funktion auslagern.
Wie übergebe ich das Objekt err an die Funktion?
...
Public Function fncErrorLog(ByVal error As errObject)
...
fncErrorLog(err)

so gehts nicht...
 

Lesen sie die antworten

#1 Sascha Trowitzsch
27/10/2007 - 16:23 | Warnen spam
Hi,

"Günter Gerold" schrieb im Newsbeitrag
news:ffvddq$8d4$
Hallo NG,

mein Errorhandler sieht im Moment so aus:

____________________________________________________________________________
____________
Private Sub Form_Open(Cancel As Integer)
On Error GoTo Form_Open_Error

'Hier der eigentliche Code

Ausgang:
On Error Resume Next
Exit Sub

Form_Open_Error:
Select Case Err.Number
Case 0
Resume Ausgang
Case Else
MsgBox "Ein Fehler ist aufgetreten: " & vbCrLf & _
"VBA Dokument " & "Form_frmStart" & vbCrLf & _
"Prozedur: Form_Open" & vbCrLf & _
"Zeile: " & Erl & vbCrLf & _
"Fehler-Nr.: " & Err.Number & vbCrLf & _
Err.Description, vbCritical
fncErrorLog ("Form_frmStart, Form_Open, Zeile:" & Erl & ", Nr.:"
& Err.Number & ", " & Err.Description)
Resume Ausgang
End Select
End Sub
____________________________________________________________________________
________________

in meiner Funktion fncErrorLog wird der Fehler in eine Tabelle geschrieben.

Um jetzt "hübschen" Code zu erzeugen, will ich die Fehlermeldung durch
MsgBox in die Funktion auslagern.
Wie übergebe ich das Objekt err an die Funktion?
...
Public Function fncErrorLog(ByVal error As errObject)
...
fncErrorLog(err)

so gehts nicht...



ByVal weglassen.
error (reserviertes Wort) durch anderen Namen ersetzen.
Daneben Tipp: Gleich am Anfang der Prozedur die Eigenschaften des Err.Objektes
auslesen und in Variablen zwischenspeichern, damit durch einen möglichen Fehler
in der Err-Proc selbst nicht falsche Sachen rauskommen.

Ciao, Sascha

Ähnliche fragen