I've decided that it is time to start maintaining a Table of Contents for my Ribbon blog posts. It's just getting a little too hard to find them all. 🙂
I'll keep modifying this page, updating it as I add more and more examples.
RibbonX Book
Fellow Excel MVP Robert Martin, Access MVP Teresa Hennig and I have written a book called RibbonX - Customizing the Office 2007 Ribbon. This book builds on many of the things discussed on this blog, as well as adds much more material not covered here. Some examples from the book can be seen here:
- Creating a RibbonX Customization Template for the CustomUI Editor
- The entire Chapter 7 is available for download, including the example files!
If you're interested in seeing more than just Chapter 7, you can buy the book here.
Other Useful Links
Using the CustomUI Editor tool (A free download that you are crazy not to use!)
The Excel 2007 VBA Programmers Reference RibbonX chaper is available for download, and is fantastic. I'd highly recommend giving it a read.
RibbonX development references compliments of Patrick Schmid, OneNote MVP.
Office 2007 Icon Gallery A collection of Add-ins and Global Templates for Excel, Word and Powerpoing, which will help you find the idMso's of the built in menu commands. (Some more history about the original incarnation of these files can be found here.)
List of Office Control ID's from Microsoft for all the Office applications. (Read more here.)
MSDN Articles of Interest:
- Customizing the Office (2007) Ribbon User Interface for Developers (Part 1 of 3)
- Customizing the Office (2007) Ribbon User Interface for Developers (Part 2 of 3)
- Customizing the Office (2007) Ribbon User Interface for Developers (Part 3 of 3) (This contains all the callback signatures)
Examples on this blog
- A basic demonstration of creating a button group on the Ribbon, and the VBA procedures needed in order to react to button clicks.
- Several examples of creating buttons on the Ribbon. These examples include:
- Example showing that there are three small buttons to one column of button controls on the Ribbon
- Showing how to add a group to an existing tab (instead of a new one)
- Using large buttons (instead of the normal small ones) on a Ribbon group
- Mixing large and small buttons on one group
- Finding and using Excel's built in Ribbon images on button controls.
- Shows how to use your own picture on a Ribbon button, rather than just the default images allowed in Microsoft Office.
- An example of creating a checkbox on the Ribbon, and having a VBA message box pop up to tell you which way the checkbox is set.
- An example how to change the value of a Ribbon control (checkbox) from a VBA procedure using a callback, (not from clicking the checkbox itself.)
Part 7
- Demonstration of using a checkbox to control the visibility of a button on the Ribbon. Contains a detailed walk-through of the setup and order of code execution.
- (Temporarily unavailable)
- Shows how to create a very basic dynamic menu in a Ribbon group.
- An example of using an editBox control to change the name of a button on the Ribbon.
- Using an editBox and a Button to rename worksheets. This article is built around displaying the interaction between the ribbon and application interaction.
- A tutorial in the creation of a RibbonX button, and a complete dissection of the code used to create it. Contains images and explanation to show what each and every piece of the code accomplishes.
- This example shows the creation of a menu which lists all Excel files in a directory, and will open the selected file when you click it. It also allows you to change the file path and update the menu to reflect the files in the new path.
Sharing A Ribbon Tab With Multiple Workbooks
- An exploration of creating an Add-in to act as a RibbonUI container, and how to add controls to that tab from a different workbook.
Debugging RibbonX Invalidate/InvalidateControl issues
- Some observations and recommendations to avoid having another add-in conflict with yours.
Examples from other sites:
Other Examples
Note: If you have examples on your site, and would like them added here, please contact me.
4 thoughts on “Ribbon Example Table of Contents”
Hello. Happy New York!
I have a question. I have Microsoft Office 2007 Ultimate version installed on my computer. The application I most love is OneNote 2007. Boy, is that a handy program! I don't know what Office 2007 packages offer OneNote 2007. I know for a fact that the Standard edition does not.
I have a question, some of the Office 2007 applications that utilize that new ribbon along the top of the program interface will also have the round Office button in the upper left corner. I have noticed at times that the Office button pulsates or flashes (white to yellowish-gold, back and forth) and at other times it does not, just remains white. Why at times does the Office button pulsate or flash? Under what conditions? ...ALL CONDITIONS IT WOULD MAKE IT FLASK OR PULSE PLEASE. What is it trying to tell me? I have looked on the web trying to find an answer to this and I cannot find an answer anywhere. It can get annoying at times, when I am in Word 2007 and it just pulsates or flashes at me while I am writing a long report. ALSO, what are the corrective measures, if they aren't obvious to stop this pulsating or flashing. Please post reply. Thank you!
Opps! I mean "Happy New Year!" Sorry! How did that happen? 🙂
Hi Troy,
You can find a chart that tells you what versions of Office contain OneNote at Microsoft's Site. It looks like it's pretty much Student & Teacher, as well as Ultimate.
With regards to the flashing Office button, I can't say that I've ever remarked on it... I'll see what I can find out.
Hi Troy,
My friends tell me that the pulsing is the behavior prior to clicking the Office Button for the first time, which was done to make it more obvious that it is a button that exposes a menu.
Once the button is pressed the first time, it should never resume the pulsing appearance. Clicking the button sets the following registry key ...
[HKEY_CURRENT_USER\Software\Microsoft\Office\12.0\Common\General] "OfficeMenuDiscovered"=dword:00000001
As always, edit the registry at your own risk. Should you choose to do so, you'd want to check if the DWORD listed above exists, and add it if not.
Hope this helps,
Ken