You can hide everything except your form with code. Make certain you won't have any possible "unhandled" errors generated by your DB as the Access window has to be open to generate the default error messages.
I can't give an attribution for the code as I don't immediately find where I first saw it.
Set the PopUp property of your forms to Yes
Set the On Open property of your main form to
1) select the open form and then
2) call a program.
_______________________________________________________
Sub Form_Open(Cancel As Integer)
DoCmd.SelectObject acForm, "Switchboard", False
Call fSetAccessWindow(SW_HIDE)
End Sub
______________________________________________________
This is the program you want to call.
______________________________________________________
Option Compare Database
Option Explicit
Global Const SW_HIDE = 0
Global Const SW_SHOWNORMAL = 1
Global Const SW_SHOWMINIMIZED = 2
Global Const SW_SHOWMAXIMIZED = 3
Private Declare Function apiShowWindow Lib "user32" _
Alias "ShowWindow" (ByVal hwnd As Long, _
ByVal nCmdShow As Long) As Long
Function fSetAccessWindow(nCmdShow As Long)
Dim loX As Long
Dim loForm As Form
On Error Resume Next
Set loForm = Screen.ActiveForm
If Err <> 0 Then 'no Activeform
If nCmdShow = SW_HIDE Then
MsgBox "Cannot hide Access unless " _
& "a form is on screen"
Else
loX = apiShowWindow(hWndAccessApp, nCmdShow)
Err.Clear
End If
Else
If nCmdShow = SW_SHOWMINIMIZED And loForm.Modal = True Then
MsgBox "Cannot minimize Access with " _
& (loForm.Caption + " "

_
& "form on screen"
ElseIf nCmdShow = SW_HIDE And loForm.PopUp <> True Then
MsgBox "Cannot hide Access with " _
& (loForm.Caption + " "

_
& "form on screen"
Else
loX = apiShowWindow(hWndAccessApp, nCmdShow)
End If
End If
fSetAccessWindow = (loX <> 0)
End Function
Kayle Lawrence
kaylaw1@mindspring.com
Kayle.Lawrence@ssa.gov