Avatar of John-trying-very-hard
 asked on

Access 2003 custom menu in Access 2007, closed, never to be seen again??

I look after an Access 2003 application (mde) running on Access 2007 which uses a custom menu bar. A user has discovered that the menu bar can be dragged from its location to become floating, and that once floating it can be closed. Once closed I cant find a way to reopen it. I have tried reinstalling the mde to no avail so it must be something in Access itself. I have discovered that I can't edit the menu in 2007, http://accessjunkie.com/faq_31.aspx, I have to use 2003 which we do not have on any office machine!!!

My questions are firstly how do I get the menu bar back on this one machine and second how do I stop it happening again, i.e. lock the menu. Do I have to go back to 2003?

Thanks for your help
Microsoft Access

Avatar of undefined
Last Comment

8/22/2022 - Mon
Jeffrey Coachman


The general rule for anything like this is always:
  Create the MDE file in the same version of Access your users will be using.

So your basic options are:
- Create a new MDE for Access 2007 with Custom "Ribbons" that simulate the Access 2003 Menus
(Menus, as they were in Access 2003, do not exist in 2007)
(Not reccommended as creating custom ribbons is difficult for beginning developers.)

- Create a new MDE for Access 2007 without Custom "Ribbons", and just use the built in Ribbons. (Reccommended)

-Roll back to Access 2003 (Not reccommended)

Obviously, my personal opinions.

Lets see what some other experts have to say...


View this solution by signing up for a free trial.
Members can start a 7-Day free trial and enjoy unlimited access to the platform.
See Pricing Options
Start Free Trial
Ask your own question & get feedback from real experts
Find out why thousands trust the EE community with their toughest problems.

Hi Guqro

Commandbars("CustomToolbar").Protection=msoBarNoChangeVisible+msoBarNoChangeDock stops the problem from ocuring in the future, thanks for that, but I still have a machine with no menu, ShowToolbar does not seem to show it once it has been closed, Its almost like it does not exist anymore.

I have removed and reinstalled the application (a single mde) and reinstalled Microsoft Office 2007 from scratch and the menu still will not come back, I understand that Office will not completely uninstall but it was worth a try.

There are two references to the custom menu in the registry, in user and current user, but the long value string makes me think that these are not relevant, they look like definitions rather than controls, no obvious 'on' or 'off'.

To my way of thinking now it must be something in XP Pro.

Hi Boaq2000

Developing in Office 2007 was not an option in 2004 when the ap was produced and I desperately want to avoid interfering with the code as much as I can. I have recompiled the ap in 2007, the last few minor edits were done in 2007. Can't use the built in ribbons, too much access to sensitive data for my users, thanks for the 'Fluent UI' link, I will have a go. if I can't find an easier fix.
This is the best money I have ever spent. I cannot not tell you how many times these folks have saved my bacon. I learn so much from the contributors.

Hopefully you recognized that "CustomToolbar" in
  DoCmd.ShowToolbar "CustomToolbar", acToolbarYes

is only a placeholder, which you have to replace with the name of your toolbar.
Hint: to show the names of all toolbars ( and there are a lot ! )

Public Sub ShowAllCommandbars()
Dim cb as Commandbar

  For each cb in Commandbars
    Debug.Print cb.Name
end sub


Hi Gugro

Yes I spoted the placeholder, still no sign of the menu.

I think have resolved the issue in a very clumsy way, I copied the mdb to the problem machine, set its startup properties and created a new mde, the menu came back. If I create the mde on a machine with the menu visible and copy it to the machine without the menu, no menu??? I would love to know why this is so but life is too short, my user has the menu back and thanks to your


the problem shouldn't happen again. Thanks for your help.