If you find yourself repeating the same Execute method in different parts of your code when clearing tables, use this method instead to automate the process. When you already have a global variable set to the open database, delete all the records in a table with this function, where DB is the database object:
Function ZapTable(sTable As String, _ Optional sWhere As String = "") As Integer Dim sSQL As String On Error GoTo Err_ZapRecs ' For Access Apps only: ' docmd.SetWarnings False sSQL = "DELETE * FROM " & sTable & " " If sWhere <> "" Then sSQL = sSQL & "WHERE " & sWhere End If DB.Execute sSQL, dbFailOnError 'docmd.SetWarnings True ZapTable = TrueExit_ZapRecs: Exit FunctionErr_ZapRecs: ZapTable = False''ERROR HANDLING IF DESIRED Resume Exit_ZapRecsEnd Function
Use this function in the code as in these examples:
If Not ZapTable("locLookup") Then MsgBox "Cannot delete Table."End If
Or:
If Not ZapTable("locCities", "STATE = 'NY'") Then MsgBox "Cannot delete Table."End If