Modify MenuBar or ToolBar in Access 2007 once imported

D

Dale

Is there a way once the menubar or toolbaris imported into 2007 that it can
be modified to add new menus or change existing ones. I have seen one
response to go back and modify it in a previous version (mdb) and then import
it again. I cannot believe that you have to keep around older versions to
modify and reimport to do this. Is there any other way without having to
build a new tab for the ribbon?

Dale
 
A

Albert D. Kallal

There is lot of examples of how to modify, or build menus bars.

How to create command bars in Access 2000
http://support.microsoft.com/kb/209974

How to create command bars in Access 2002
http://support.microsoft.com/kb/306369
Is there any other way without having to
build a new tab for the ribbon?

See the above samples. You have to use code, and often many people used code
in the past to create their menus anyway.

I think I would just spend the half hour of your time and build a ribbon.
They really are very easy to build, and I think the time to try and modify
the menu bars in 2007 is going to be just as much work as it is to re-do it
in 2007 as a ribbon anyway. Office 2010 been announced, and it also ribbon
based (and office 2010 has a ribbon customizer built in also). Once you deal
with this issue once...it will be out of your way.

You kind of want to stick to doing things one way, or the other (otherwise
you need 2 sets of help files, and training manualls etc.). It is best to
make the leap to using menu bars (then stick to using pre 2007 for
development), or if you using 2007, then best to stick to ribbons.

You can certainly use the above ideas and links to modify and create your
menu bars.

To create right click context menus in A2007, have a look at this article
http://www.databasejournal.com/feat...ting-Up-Right-Click-Menus-for-Access-2007.htm
 
D

Dale

Albert,

Once i upgraded the database to 2007 in brought in all of the menus and put
them in the ribbon and called it Add-ins. I do not want to go back and use
the old style. I was wanting to know if there was a way to modify the add-in
ribbon in 2007 or as you suggested do i have to rebuild the whole thing using
xml and uSysRibbons table.

Dale
 
A

Albert D. Kallal

Dale said:
Albert,

Once i upgraded the database to 2007 in brought in all of the menus and
put
them in the ribbon and called it Add-ins. I do not want to go back and use
the old style. I was wanting to know if there was a way to modify the
add-in
ribbon in 2007 or as you suggested do i have to rebuild the whole thing
using
xml and uSysRibbons table.

As mentioned, you have to use VBA code. Quite a bit more work then the old
menu customizer. So, to be 100% clear, no, there not a built in UI that can
modify the menus, you have to use code, use a previous version, or move over
to ribbons.

While I said it not hard, it certainly can be time consuming and work to
change things over too a ribbon.

In a sense I really don't have a great answer for you.
 
D

David W. Fenton

While I said it not hard, it certainly can be time consuming and
work to change things over too a ribbon.

I'm just starting with A2007, and just bookmarked your ribbon class
page yesterday -- looks like it will be very useful.

But what about this:

WYSIWYG Ribbon Editor for Access, Word, Excel
http://www.ribboncreator.de/en/

(I got there from MS's site, actually)

It's shareware and costs only €16.

Have you not tried any 3rd-party products for this?

It really does seem to me that MS ought to provide their own editor
for this. Does the XML editor that comes with the deluxe version of
Office 2007 work?
 
A

Albert D. Kallal

Have you not tried any 3rd-party products for this?

When I first started...yes, but after creating a few ribbons, it all cut +
paste and it now faster then even the old approach to creating custom menu
bars. In other words, after one's created a few ribbons, they are all the
same so to speak. it not just a cut + past affair.
It really does seem to me that MS ought to provide their own editor
for this. Does the XML editor that comes with the deluxe version of
Office 2007 work?

Office 2010 has a ribbon customizer built in for "Joe" users and you can add
and remove options. As for a xml editor? Well there always visual studio,
but that's often overkill.

I actually like the xml notepad from msft (it is a free download) - notes
and screen shot here:

http://www.codeplex.com/xmlnotepad

Most of the time I don't even bother using any kind of xml editor for
ribbons. The ribbons are usually placed in a memo column anyway. I just size
the row in table view to near full screen. I then just edit the text in
place. Only hard part is forgetting to use ctrl-enter in the memo field.
And, just place a compact/repair option in the qat. Thus, you don't have to
exit, and then re-enter the application to re-load ribbon changes. So, a
quick ctrl-w (close/save the table/memo text) and then a quick whack of the
compact/repair on the qat, and I can see the ribbon changes.

So, for ribbons, it just as easy to use note pad, and, I usually editing
inside of access anyway. I really don't spend much time creating ribbons.
With a few ribbons in hand, then creating new ones are just a Easter egg
hunt of pulling stuff out from existing ribbons. In fact I am near
forgetting how to make ribbons since I always just using existing stuff and
don't even hardly read the xml.

I don't miss or even feel the need for a ribbon editor. I was shopping and
looking for a ribbon editor when I started this, but now the need just seems
to have faded away.
 
D

David W. Fenton

Forgive me for what may be stupid questions, but I'm working on an
A2003 project and don't want to fire up A2007 because it takes so
long with reconfiguring.

OK, I realized that sounds churlish, and fired it up, but I
accidentally did it twice, so there were duelling installers, and
lots of error messages and it's taken several minutes and Access
isn't even started yet. In fact, it took almost 5 minutes just to
CANCEL out of the two installer instances. Trying again...well, it
seems the reconfiguration actually succeeded, even though Access
never opened, because when I started Access again, it popped right
up without reconfiguring -- a pleasant surprise, I guess.

Most of the time I don't even bother using any kind of xml editor
for ribbons. The ribbons are usually placed in a memo column
anyway.

Uh, where?
I just size
the row in table view to near full screen. I then just edit the
text in place. Only hard part is forgetting to use ctrl-enter in
the memo field. And, just place a compact/repair option in the
qat.

The what? What is the "qat"?
Thus, you don't have to
exit, and then re-enter the application to re-load ribbon changes.
So, a quick ctrl-w (close/save the table/memo text) and then a
quick whack of the compact/repair on the qat, and I can see the
ribbon changes.

What table are the ribbons stored in? I just spent five minutes
figuring out how to show hidden/system objects and browsed through
the system tables, but saw nothing about the ribbon.
So, for ribbons, it just as easy to use note pad, and, I usually
editing inside of access anyway. I really don't spend much time
creating ribbons. With a few ribbons in hand, then creating new
ones are just a Easter egg hunt of pulling stuff out from existing
ribbons. In fact I am near forgetting how to make ribbons since I
always just using existing stuff and don't even hardly read the
xml.

Where do I find the XML for existing ribbons?

You're way, way ahead of me, Albert, and you're assuming way too
much in regard to terminology.

I'm trying to be fair-minded with A2007, but so far, it's been even
more frustrating than the switch to the VBE in A2000, which took me
years to get used to (and I still grit my teeth on a daily basis
over the bugs that still remain in that implementation, e.g., an
open property sheet blocking the return to the main Access window).

I probably need to do a project in it to get used to it, but I
haven't had a significant new development project in over 5 years,
i.e., an app developed from scratch -- all my projects these days
are taking old apps and fixing them.

I should probably muck about with split forms and control grouping
and the report editor's live preview to get myself excited about the
significant new features so that I'll have a reason to get used to
all the things that have changed.
 
A

Albert D. Kallal

David W. Fenton said:
Forgive me for what may be stupid questions, but I'm working on an
A2003 project and don't want to fire up A2007 because it takes so
long with reconfiguring.

The above is a pain issue, and I don't like it, nor do I have a fix or good
answer (except that this changing time sucks).
even though Access
never opened, because when I started Access again, it popped right
up without reconfiguring -- a pleasant surprise, I guess.

I done the same, but do be careful. If during the switch over it messes up,
you often see the wrong references in 2007 for a 2003 mdb file. So, if the
switch over freezes up, then some of that re-configuring garbage might not
get set. You have to flip back to 2003, and then re-flip back to 2007 to get
things all fixed up. (I recommend this flipping back to ensure all is well
if you have a freeze up during this flip over).
Uh, where?

Ok...I was bit terse here..my bad..

You can specify a custom ribbon for a form in the "other" tab of the
properties sheet. There is a drop down that lets you specify which ribbon is
to be used for a given form (and this is also for reports -- again this is
like how the menu bar option was set in previous versions). So, the system
table used for holding ribbons (that drives the drop down selection) is
USYSribbons. Article here:

http://office.microsoft.com/en-us/access/HA102114151033.aspx

Note in the above the tip to display system tables...you need/want to do
this.

So, here is a screen shot of what it looks like with the memo field sized
really large:
http://cid-b18a57cb5f6af0fa.skydrive.live.com/self.aspx/.Public/AccessHelp/RibbonShot.png

(after above displays.. I think you have to click on it again to see more
full screen picture...
The what? What is the "qat"?

Quick access tool bar (it is a common office 2007 or later term).
My sorry, I should have said/written

Quick Access Toolbar (QAT)

(you can Google office QAT for more info).
What table are the ribbons stored in? I just spent five minutes
figuring out how to show hidden/system objects and browsed through
the system tables, but saw nothing about the ribbon.

See the article.
Where do I find the XML for existing ribbons?

You don't, you use a reference like:

http://www.accessribbon.de/en/index.php?Access_-_Ribbons:Ribbon_Attributes

However, you CAN AND NEED to learn how to gab the existing built in commands
by finding their group or button name. You can do this by opening up the QAT
customize option (office button, lower right access options-> choose
customize. You see the list of options and you use tool-tips to get/grab the
built in commands, or even ribbon groups).
You're way, way ahead of me, Albert, and you're assuming way too
much in regard to terminology.

That is fine, I already did my whole day of pulling out my hair!!!
I'm trying to be fair-minded with A2007, but so far, it's been even
more frustrating than the switch to the VBE in A2000, which took me
years to get used to (and I still grit my teeth on a daily basis
over the bugs that still remain in that implementation, e.g., an
open property sheet blocking the return to the main Access window).

Use alt enter to toggle display of the property sheet. And, at least they
fixed this so the stupid sheet does not display in form view mode.

So, assuming you have the search bar displayed, and the ribbon grouped by
object type, then you use ctrl-f to search. (take a look at the above screen
shot to see how the nav pane is setup).
I should probably muck about with split forms and control grouping

No question that being FORCED (or better put paid) to use/learn 2007 really
helps. I was tossed into working on a monster application inn 2007. It took
a good part of a day or so to finally figure out how to get the nav pane to
be my friend. Once I changed how I worked then I found the nav pane just
fine to work with (however, most long time access people I talk to are not
really fond of the nav pane).
 
P

Paul Shapiro

When I was doing both Access 2003 and 2007 work I ran Access 2003 in a
Windows XP virtual machine running on my Vista x64 workstation. The Win
XP/Office 2003 combination matched the oldest software in use by any of my
clients, so preparing deployments was simpler. Starting the VM takes about
half a minute, and with enough RAM on the workstation, performance is as
good as a real machine.
 
D

David W. Fenton

When I was doing both Access 2003 and 2007 work I ran Access 2003
in a Windows XP virtual machine running on my Vista x64
workstation. The Win XP/Office 2003 combination matched the oldest
software in use by any of my clients, so preparing deployments was
simpler. Starting the VM takes about half a minute, and with
enough RAM on the workstation, performance is as good as a real
machine.

I don't have that luxury, as my laptop is already maxed out at 2GBs
of RAM. A new machine is not in the cards any time soon,
unfortunately.

Really, they ought to do something about it. It's just ridiculous.
 
D

David W. Fenton

Albert D. Kallal said:

Thanks for the stuff on the ribbons. QAT rang the bell just after I
posted. I really haven't even spent 2 hours in A2007 yet, so I'm
probably being unfair expecting spoon-feeding at this point...I'm
just one of those who wants to get up and running as quickly as
possible, and it's frustrating to spend time figuring out things
that I'm accustomed to having at my fingertips.

This is pitiful. Access is a RAD tool. It's drag-and-drop.

But this is so NOT RAD. It's not that I can't manage it, nor that I
wouldn't one day want to write my own XML for the ribbons. But there
ought to be a GUI for this. I'm sorry, but I shouldn't need to know
the names of individual attributes in order to be able to create a
valid ribbon.

I still use the QBE to write most of my SQL. And that's because it's
just much easy to drag, drop, doubleclick, point-and-click than it
is type out the stuff by hand. Sure, I frequently go into the SQL
view and change things manually, and I'm quite comfortable doing so,
because I understand what I'm seeing.

But this is something completely different. It's a
Microsoft-specific language. That it's XML doesn't make it easier,
because you still have to know that the attributes and entities
mean. Being able to drag and drop and then compare the visual
results to the text results is one of the ways I learned SQL, but
that ain't gonna happen here.

*sigh*

MS may think A2007 is more an end-user tool than a developer tool,
but this pretty much shows that they don't understand either their
end users nor their developers. I'm a developer and *I* want a GUI
for this task. By not providing it, they've basically shut end users
out of creating custom menus except for the QAT. That makes no sense
to me.

But it is typical of Microsoft:

1. Implement a bad design (the old dockable toolbar bar interface).

2. Choose poor default settings that make it too flexible so that
people do things accidentally and don't understand why.

3. To fix the problem, instead of choosing better defaults, take
away the flexibility and make it hard to customize. This solves the
problem of accidental changes, but for most people, removes all the
customizability.

I can count any number of cases where MS has done this kind of
thing, i.e., creating a problem with bad design decisions and then
having to figure out some kind of workaround to avoid the problem
(e.g., the single-document interface->multiple windows in one
TaskBar button).
However, you CAN AND NEED to learn how to gab the existing built
in commands by finding their group or button name. You can do this
by opening up the QAT customize option (office button, lower right
access options-> choose customize. You see the list of options and
you use tool-tips to get/grab the built in commands, or even
ribbon groups).

I can't copy and paste? I have to remember what the tooltip says and
then type that out?

Ridiculous.

(what's the MODIFY button for in the lower right? It's disabled for
me in all cases, and tantalizes me with the possibility of
customizability)

[]
Use alt enter to toggle display of the property sheet. And, at
least they fixed this so the stupid sheet does not display in form
view mode.

But I just want to Alt-Tab back to the main Access window. I want to
KEEP the properties sheet displayed.

In any event, Alt-Tab doesn't do anything there.

This does seem to be fixed in A2007, because the properties sheet is
docked (as opposed to A2003, which is what I was complaining about).
But I'm not sure I like this, either. I don't have enough screen
real estate on my laptop to allocate a fixed portion of it to the
properties sheet like this.

Aha! If I undock the properties sheet in A2007, it doesn't block the
return of focus to the main Access window when alt-tabbing back to
it from the VBE! Someone noticed the bug and fixed it! Yay!

Again, though, it's one of the big annoyances of A2003, which is
still going to be my main development environment for a long time to
come.

It is good to know, though, that some things are better, and that
will make it tempting to switch some development to A2007, when
appropriate.
So, assuming you have the search bar displayed, and the ribbon
grouped by object type, then you use ctrl-f to search. (take a
look at the above screen shot to see how the nav pane is setup).

I can already see how helpful the searching is. What I miss is an
easy way to select and item and design it. I'm so accusomed to
selecting an object and hitting Alt-D. I don't see any corresponding
single-keystroke way to select the object and get it in design view.

OK -- I figured it out! Enter opens it in normal view and Ctrl-Enter
opens it in Design view.

I do still have a conceptual problem with figuring out how to get
the focus to the nav pane, though, and I can't tell visually where
the focus is. I see from the help file's article on shortcut keys
that F6 cycles through the open panes, but this isn't as convenient
as a shortcut key to take me directly to the navigation pane.

Anyway, mostly quibbles -- the find will probably make it a lot
easier to use, and the fact that it defaults to all objects make me
really glad I don't Tony's naming conventions! :)
No question that being FORCED (or better put paid) to use/learn
2007 really helps. I was tossed into working on a monster
application inn 2007. It took a good part of a day or so to
finally figure out how to get the nav pane to be my friend. Once I
changed how I worked then I found the nav pane just fine to work
with (however, most long time access people I talk to are not
really fond of the nav pane).

I can see its advantage, though it would be convenient to be able to
return to the old way of working. Given that you can view by object
type (like an Outlook nav pane), I just can't see it being terribly
much of an adaptation (though I do think the lack of a columnar view
is pretty problematic). If the nav pane were undockable (instead of
permanently attached to the left margin), it could easily be
engineered to behave like the old database window.

One question: do you do most of your work in A2007 nowadays, or are
you switching back and forth a lot? Do you find A2007 frustrating
now?
 
A

Albert D. Kallal

David W. Fenton said:
This is pitiful. Access is a RAD tool. It's drag-and-drop.

Well, office 2010 and access 2010 has a ribbon customizer built in. You can
add new groups, buttons and hide existing ones. (and, you can save out that
xml customizing). There was simply not the time and budgets to put this into
2007. I have direct experience with a number of features and things that did
not make it into access 2010. So, everything here is limited in terms of
time and resources. For example outlook 2007 was not full ribbons because MS
did not have the time to do it correctly.
But this is something completely different. It's a
Microsoft-specific language. That it's XML doesn't make it easier,
because you still have to know that the attributes and entities
mean.

Actually, as I said, I don't really read them, or care anymore. If you look
at code samples, and a good number of applications that have menus, a good
number actually use code to create those menu bars. So, it often been a
coding approach for those menu bars. I find the xml far easer then the old
system because it easier to cut+paste ribbons and buttons between
applications. The whole xml thing promotes easy sharing of buttons. I often
pasted xml in this newsgroups that gives a button to do something. This is
harder to do previous. As for what the attribute mean?, well, I have two:
the label text, and the on-action that will run my VBA code...the rest I
don't hardly touch. And, the options for placing NICE looking pictures on
your ribbon bar is so much better then the tiny image we had previous.

Being able to drag and drop and then compare the visual
results to the text results is one of the ways I learned SQL, but
that ain't gonna happen here.

I 100% agree. As mentioned customizing of the ribbon in 2010 is built in.
You can add new groups and buttons, and hide existing. You not need to see
any xml when you do this. And, you can even do a save-as and save this
config file (xml) for ease of transfer. Again that ease of transfer was a
pain before. Especially when you ONLY needed a few buttons out of a menu bar
in a DIFFERENT application. You can go grab just one, or two, or even a
group out of that other ribbon. With the old UI..it was really hard to go
and get other button code and menu bars move around. Now it is just so easy
to move and copy and paste that stuff around...

I would have loved some type of ribbon customizer in 2007, but it did not
make the cut. However, as mentioned, I don't miss it right now. The ribbon
customizing system in 2010 is for end users and is NOT a full ribbon
developer builder kind of tool anyway. I think developers will NOT like nor
use the ribbon customer in office just like so many before used code then
trying to work with a menu builder that had limited support for menu bars
anyway (you have to use code to add combo boxes, or check boxes, or radio
button to those old menu bars anyway). So, in both cases when you really get
into customizing things, you be using code anyway.

So office 2010 has ribbon costuming, but it not really a developer ribbon
builder. I don't think we see that kind of builder other then a 3rd party
tool. Anyway, the ribbon customer simply did not make the cut in 2007. I
know of features that will not make it into access 2010 not make it either.
The idea there is unlimited resources here and everything gets done in one
version is simply NOT the case, nor how of ANY of this software engineer and
development process works at ANY company.

One question: do you do most of your work in A2007 nowadays, or are
you switching back and forth a lot?

A good portion of paying customers are using access 2007. After all, if they
investing in me, they tend to be investing in software in general and have
money. For my commeral runtime deployment applications, they all still 2003,
but my next new project for runtime is going to use full ribbons and thus be
in access 2007...or access 2010!
Do you find A2007 frustrating
now?

No, not a all. I 100% at home with it. Among developers here I am somewhat a
gifted person in terms of flexibility. The trick was leaning to modify how I
worked for so many years. It like those old FoxPro developers coming here
and gasping at how ms-access don't have record numbers.

The problem here is one has to take some time to get up to speed with the
nav pane. You have to make trade offs. So, don't scroll around all day like
we used to, but now type a few chars. Your brain will start to think like
this over time. Again, to be fair, we should had NEVER needed to get up to
speed for this.

There are some gives and takes but overall I like 2007. So, for the nav
pane, in place of scrolling lots, you use control-f and type a few chars,
and then use the down arrow and then control + enter. In the work
environments I typical have two at least 21' monitors (so I running duel
screen), and if I am doing testing of code, then I have 3 copies of
ms-access launched on that machine. (the 2nd copy of ms-access gets shut
down before I save...since it opened to the same front end).

I also been playing LOTS of time with 2010 (and, there MORE new things in
2010 then all of 2007 by QUITE a bit to learn). In other words...access 2010
is a whole new playground.

We about 10 days away from the lid of the really **BIG** features for access
2010..

Anway, yes..I am very up to keyboard speed in 2007/2010 now...
 
D

David W. Fenton

you have to use code to add combo boxes, or check boxes, or radio
button to those old menu bars anyway

Well, none of those things belong on a toolbar or menu bar, so it's
not something I've ever missed.

Frankly, the vast majority of my apps have no custom menu -- they
just display the default Access menus. This has never been a problem
and has made it easier to support the apps.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top