runtime error 3048

Copper Contributor

I've got error message, "cannnot open any more databases." Thank you for help.

3 Replies



Read this support article.


Access News
Access DevCon

Some of my clients got the error and adding Trusted Locations for their FE & BE solved the problem of both the 3048 error and the .laccdb lock file not getting deleted. I didn't get the 3048 error until last night.
My installed version is:
Version 2201 (Build 14827.20198 Click-to-Run); 32-bit version of MS Office Professional Plus 2016

So looks like they fixed some and broke others.

For anyone interested, here's a quick way to see if you have the bug:

1. Create a new accdb
2. Create a table (Dual for me) with 1 Autonumber field.
3. Add one record
4. Insert a new module
5. Copy and paste the following code that creates a short recursive routine:

Option Compare Database
Option Explicit


Public Sub BugTest(Optional DbCount As Long = 1)
  On Error GoTo errHandler
  Dim rs As DAO.Recordset


  Set rs = CurrentDb.OpenRecordset("Select * from Dual", dbOpenDynaset)
  Debug.Print "Open Db count: " & DbCount
  If DbCount < 1000 Then BugTest DbCount + 1


  If Not rs Is Nothing Then rs.Close
  Set rs = Nothing
  Exit Sub
  Debug.Print Err.Number, Err.Description
  GoTo ExitSub
End Sub


6. run BugTest procedure.

For me, the routine stops with the 3048 -Cannot open any more databases. after opening 252 (errors opening the 253rd recordset)

HI @CBPark 


Runtime Error: Code 3048 happens when Microsoft Access fails or crashes whilst it's running or due to the installation of the update.

Therefore, right now, the only reliable solution seems to be to go back to the earlier version of Microsoft Access.

You must temporarily disable Office updates to prevent Office from automatically installing the new update. 


I hope this helps.



Suyash Thomson