Hi Mate,
I just knocked this code up and dumped it on a form.
Create a form with a command button called command1 and change the database path to suit your needs.
This will open the database and you will know when it has closed from the error handler in timer1
Hope this helps.
Martin
Dim o As Access.Application
Dim blnUserOpened As Boolean
Private Sub Command1_Click()
blnUserOpened = True
Set o = New Access.Application

penCurrentDatabase "C:\Program Files\Altova\XMLSPY2004\Examples\Tutorial\company.mdb"
o.Visible = True
Timer1.Interval = 200
End Sub
Private Sub Timer1_Timer()
On Error GoTo errh
If blnUserOpened Then
DoEvents
'test if user closed, if so this will cause error 2467
If LenB(o.CurrentProject.Name) > 0 Then Exit Sub
End If
exith:
Exit Sub
errh:
If Err.Number = 2467 Then
Set o = Nothing
Timer1.Interval = 0
End If
Resume exith
End Sub