Here is some code from years ago that would enable / disable menu bar items based on user authority (Access 2003, 2007)
You can also "hide / show" menu items as well.
Public Function Enable_Disable_MenuItems_Options(strMode)
Dim MenuBar 'As CommandBar,
Dim MenuControl 'As CommandBarControl
1000 On Error GoTo Error_Trap
1020 Set MenuBar = CommandBars("mnuCustom")
1040 If strMode = "Enable" Then
1060 MenuBar.Controls("Edit").Enabled = True
1080 MenuBar.Controls("Admin").Enabled = True
1120 With MenuBar
1140 Set MenuControl = .Controls("Tools")
1160 MenuControl.Controls("Calculator").Enabled = True
1180 MenuControl.Controls("Compact and Repair Database...").Enabled = True
1200 MenuControl.Controls("Mail Recipient (as attachment)...").Enabled = True
1220 MenuControl.Controls("Change My Password").Enabled = True
1400 End With
1420 MenuBar.Controls("View").Enabled = False
1440 Else
1460 MenuBar.Controls("Edit").Enabled = False
1480 MenuBar.Controls("Admin").Enabled = False
1520 With MenuBar
1540 Set MenuControl = .Controls("Tools")
1560 MenuControl.Controls("Calculator").Enabled = True
1580 MenuControl.Controls("Compact and Repair Database...").Enabled = True
1600 MenuControl.Controls("Mail Recipient (as attachment)...").Enabled = True
1620 MenuControl.Controls("Change My Password").Enabled = False
1780 End With
1800 MenuBar.Controls("View").Enabled = False
1820 End If
1840 Set MenuBar = Nothing
1860 Set MenuControl = Nothing
1880 Proc_Exit:
1900 Exit Function
1920 Error_Trap:
1940 Err.Source = "Module_Utilities: Enable_Disable_MenuItems_Options at Line: " & Erl
1960 DocAndShowError
1980 Resume Proc_Exit
2000 Resume Next
End Function