Empfehlung - Fehlerhandlings ausschalten

Schalte Fehlerhandlings explizit (wieder) aus

Eine On Error Anweisung schaltet VB/A explizit in einen „Fehler-Handling-Modus“. Daher sollte grundsätzlich nach jedem logischen Block das Error-Handling auch wieder explizit ausgeschaltet werden.

    Dim rs As Recordset
    Dim sName As String
 
    On Error Resume Next
    Set rs = db.OpenRecordset(sql)
    If Err.Number <> 0 Then Exit Sub
    sName = rs.Fields("Name").Value
    rs.Close

In diesem Beispiel wird zwar ein Fehler-Handling aktiviert aber nicht wieder ausgeschaltet. Es ist besser, das Error-Handling entsprechend zu beenden:

    Dim rs As Recordset
    Dim sName As String
    Dim intError As Integer
 
    On Error Resume Next
    Set rs = db.OpenRecordset(sql)
    intError = Err.Number
    On Error GoTo 0
    If intError <> 0 Then Exit Sub
    sName = rs.Fields("Name").Value
    rs.Close