für eine LogDatei möchte ich auftretende Fehler protokollieren und
den Namen der aufrufenden
Sub festhalten. Ich finde allerdings keine passende
Antwort auf die Frage, wie ich den Namen der gerade aufgerufenen
Sub () ermitteln kann.
Als "Bastelansatz" habe ich
Public Prozedurname As String deklariert.
In der
Sub steht.....
Sub AufrufTaschenrechner()
On Error GoTo Errorhandler
Call Shell("Calc1.exe", 1) ( Calc1 gibts' natürlich nicht- Fehler 53)
Exit Sub
Errorhandler:
Prozedurname = "AufrufTaschenrechner" 'Hiermit habe ich meinen Sub-Namen
ErrNumberProtokollieren ' ist die Funktion
End Sub
Function ErrNumberProtokollieren()
' Auf Fehler überprüfen
If Err.Number <> 0 Then
Cells(1, 1).Value = "Fehler # " & Str(Err.Number) 'Fehlernummer
Cells(1, 2).Value = Err.Description ' Klartext der Fehlernummer
Cells(2, 1).Value = "Sub"
Cells(2, 2).Value = Prozedurname ' Der
Sub Name
Cells(3, 1).Value = "User"
Cells(3, 2).Value = Environ("username")
End If
End Function
Klappt einwandfrei. Erscheint mir aber irgendwie zu umständlich....
Habe ich u.U. doch eine einfachere Lösung in der Recherche übersehen ?
Gruß, Ingo