title image


Smiley Na, bei EINEM geschriebenen Beitrag würde ich noch nicht...
...von einer Geduldsprobe sprechen wollen! ;o)



Es lohnt sich übrigens unbedingt, in einer freien Minute mal das Konzept des Error-Handlings anzuschaun. Ich hab das auch immer vernachlässigt, aber als ich's erst mal kapiert hatte, fand ich's genial.



Du kannst z.B. in Deiner Sub einen "normalen" Error-Handler einbauen, diesen bei Bedarf (wie hier beim Löschen der Abfrage) kurz auf Resume Next stellen und dann zum "normalen" Error-Handler zurückkehren; vom Prinzip her etwa so:





Sub txtAccessAnfänger()

'

Dim db As DAO.Database

Dim qd As DAO.QueryDef

Dim strSqlTop5 As String

Dim QryTop5 As String: QryTop5 = "qryTest"

'

' Hier erst mal Verarbeitung mit "normalem" Error-Handler;

' tritt ein Fehler auf, wird aus der Sub ausgestiegen

On Error GoTo txtAccessAnfängerErr

'

Set db = CurrentDb()

strSqlTop5 = "SELECT bla bla"

'

' Error-Handler für einen Befehl auf "Resume Next" umstellen;

' tritt ein Fehler auf, wird NICHT aus der Sub ausgestiegen

On Error Resume Next

db.QueryDefs.Delete QryTop5

'

' Weiterverarbeitung ab hier wieder mit "normalem" Error-Handler

On Error GoTo txtAccessAnfängerErr

Set qd = db.CreateQueryDef(QryTop5, strSqlTop5)

'

txtAccessAnfängerExit:

' Objektvariablen hier auf Nothing setzen! Grund:

' Die Exit-Sprungmarke wird auch im Nicht-Fehler-Fall

' durchlaufen. Somit werden die Objektvariablen in

' beiden Fällen sauber auf Nothing gesetzt.

Set db = Nothing

Exit Sub

'

txtAccessAnfängerErr:

MsgBox Err.Description, vbCritical, "Fehler " & Err.Number & " aufgetreten!"

Resume txtAccessAnfängerExit

'

End Sub





Viele Grüße

Eric

Spotlight-Kicktipp gestartet!

Steig ein und trete mit Deinem Bundesliga-Tipp gegen die Besten an! :o)

http://www.kicktipp.de/spotlight/



geschrieben von

Login

E-Mail:
  

Passwort:
  

Beitrag anfügen

Symbol:
 
 
 
 
 
 
 
 
 
 
 
 
 

Überschrift: