Problems opening Access database from Excel VBA

  • Thread starter Thread starter Jan
  • Start date Start date
J

Jan

I try to open an Access database from Excel using the following code:

Sub OpenDatabase()

strdb = "c:\demo.mdb"
Set appAccess = CreateObject("Access.Application")
appAccess.OpenCurrentDatabase strdb
appAccess.DoCmd.OpenForm "frmsysteminformation"
Set appAccess = Nothing

End Sub

This shows the form OK, but not the Access window. When I close the form it
disappears, but leaves theAccess application running in Background.

How can I open a databae in the database window and gain access, not only to
the form, but to the full Access, that is Databasewindow and all?

Jan
 
You need to set the visible property to true
appAccess.visible = true
before you set it to nothing.
 
Hi Jan,

Change your code to:

Sub OpenDatabase()

strdb = "c:\demo.mdb"
Set appAccess = CreateObject("Access.Application")
appAccess.Visible=True
appAccess.OpenCurrentDatabase strdb
appAccess.DoCmd.OpenForm "frmsysteminformation"
Set appAccess = Nothing

End Sub
Sub OpenDatabase()

strdb = "c:\demo.mdb"
Set appAccess = CreateObject("Access.Application")
appAccess.OpenCurrentDatabase strdb
appAccess.DoCmd.OpenForm "frmsysteminformation"
Set appAccess = Nothing

End Sub

This shows the form OK, but not the Access window. When I close the form it
disappears, but leaves theAccess application running in Background.

How can I open a databae in the database window and gain access, not only to
the form, but to the full Access, that is Databasewindow and all?

Regards,

Jan Karel Pieterse
Excel MVP
www.jkp-ads.com
 
Thank you both. That did the trick :-). An couple off additional question:
What if I do not want to open a form, but just want to display the
database window.
If i remove the OpenForm line, Access is started all right, but nothing is
shown.

And can I test if the database is already open before opening it?

Jan
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Back
Top