Close mdb database and delete it

I am trying to close a database and delete the mdb file.  However, when I do this it does not delete the file because the file is still locked.  Using DAO, is there a way to check to see if the mdb is still locked and wait until it is ok to delete it or is there a better way to do this?

If Not (Dbs Is Nothing) Then
    Set Dbs = Nothing
End If
sFileSpec = ProjectPath & "\" & ProjectName & ".mdb"
If Dir(sFileSpec) <> vbNullString Then Kill sFileSpec
Who is Participating?
RichWConnect With a Mentor Commented:
Look for the .ldb file in the same directory as the .mdb file.  The .ldb file is the Access locking file.  It will have the same name as the db with the .ldb extension.

Another thing you could try would be to move the delete code out of the current procedure.  Once you declare a recordset in a procedure, and the scope of that procedure dies, the connection and recordset objects die with it.

Good luck.
joesmowAuthor Commented:
Thanks.  Using a different procedure to close the databases seems to work.
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.