Reputation: 13
We are working on a project in MS-Access 2010, where users will be using switchboard as a main menu for navigation and will work in forms. We protected each form with login and password so the user can only access his/her records in a form (using vba macro inside MS-Access).
Now we would like to lock the control pane so noone can access objects like tables and queries. Does anyone have an idea how to do it in MS-Access?
Thanks for any ideas.
Upvotes: 1
Views: 7688
Reputation: 1641
An easy solution couild be simply setting the forms modal property to true in the form opening event like so:
Private Sub Form_Open(Cancel As Integer)
' Go Modal to Lock Navigation Pane
Me.Form.Modal = True
' Hide Navigation Pane
DoCmd.NavigateTo "acNavigationCategoryObjectType"
DoCmd.RunCommand acCmdWindowHide
' Hide Ribbon
DoCmd.ShowToolbar "Ribbon", acToolbarNo
End Sub
Granted setting a form to Modal may not fit every situation but if you have a startup/ switchboard style form which opens all other forms then this could be a solution for you.
Upvotes: 0
Reputation: 768
if you are looking to do this programatically, then this will do it:
Call DoCmd.LockNavigationPane(True)
however, you are probably better off hiding the navigation window and also following some of the suggestions by June7.
Upvotes: 0
Reputation: 21370
Home>Options>CurrentDatabase>
uncheck 'Use Access special keys'
uncheck 'Display Navigation Pane'
And perhaps also:
uncheck 'Allow full menus'
uncheck 'Allow default shortcut menus'
build custom ribbon
make sure users don't know about shift key bypass or else distribute executable ACCDE
Upvotes: 1