Skip to main content

RibbonX: Customizing the Office 2007 Ribbon

RibbonX: Customizing the Office 2007 Ribbon

Robert Martin, Ken Puls, Teresa Hennig

ISBN: 978-0-470-28852-8

Apr 2008

672 pages



  • As the most radical change to the Office interface in its history, the Ribbon replaces the traditional menu bar and toolbars and requires a new set of skills for customizing
  • Instructions and examples demonstrate how to customize the Ribbon using VBA, XML, Access, Excel, and Word
  • Covers the relevant aspects of security, such as trust centers and digital certificates
  • Packed with real-world code examples that readers can immediately apply
  • Features helpful references

Part I: The Building Blocks for a Successful Customization.

Chapter 1: An Introduction to the Office User Interface.

Chapter 2: Accessing the UI Customization Layer.

Chapter 3: Understanding XML.

Chapter 4: Introducing Visual Basic for Applications (VBA).

Chapter 5: Callbacks: The Key to Adding Functionality to Your Custom UI.

Chapter 6: RibbonX Basic Controls.

Chapter 7: comboBox and dropDown Controls.

Chapter 8: Custom Pictures and Galleries.

Chapter 9: Creating Menus.

Chapter 10: Formatting Elements.

Chapter 11: Using Controls and Attributes to Help Your Users.

Part II: Advanced Concepts in Ribbon Customization.

Chapter 12: Advanced VBA Techniques.

Chapter 13: Overriding Built-in Controls in the Ribbon.

Chapter 14: Customizing the Office Menu and the QAT.

Chapter 15: Working with Contextual Controls.

Chapter 16: Sharing and Deploying Ribbon Customizations.

Chapter 17: Security In Microsoft Office.

Appendix A: Tables of RibbonX Tags.

Appendix B: Tables of Tab and Group idMso Names.

Appendix C: imageMso Reference Guide.

Appendix D: Keytips and Accelerator keys.

Appendix E: RibbonX Naming Conventions.

Appendix F: Where to Find Help.


Error in Figure 6-14 Download
Image, page 217 Download
Code Download Download
186Error in Text, Parent Objects of the button Element


Parent Objects of the checkBox element .
210Error in Table 6-14,Table 6-14:

The VBA callback signature should be:
Sub OnAction(control as IRibbonControl, pressed as Boolean)
217Error in Code,While Microsoft may not have a built in method to test a CustomView, it doesn't mean that we can't come up with a way to do it. One method I've used in many solutions is to create a CustomDocumentProperty in the workbook. You'd then need to modify the rxtglHideExpense_Click callback to write to the CustomDocumentProperty each time the button is clicked to record the appropriate state. Since this is saved with the workbook, you can then use the Workbook_Open event to check the state of the CustomDocument property. You could then pass this value to the getPressed routine to ensure that the state is set correctly.
The code to create it looks similar to the following:
      Dim sDocPropName As String     Dim DocProps As DocumentProperties       sDocPropName =  ButtonPressed        Set DocProps = ActiveWorkbook.CustomDocumentProperties     DocProps.Add Name:=sDocPropName, _                  LinkToContent:=False, _                  Type:=msoPropertyTypeBoolean, _                  Value:= '<--pass a TRUE or FALSE value here   You would then query the value with:     Dim sDocPropName As String     Dim DocProps As DocumentProperties       sDocPropName =  ButtonPressed        returnedVal = ActiveWorkbook.CustomDocumentProperties(sDocPropName)   And write to it with:     ActiveWorkbook.CustomDocumentProperties(sDocPropName) = pressed  
217Error in Text and Image,Missing image and text from page--see download in this chapter for page 217.5/9/2011
367Error in Code,the code from the top of the page

should be:
supertip= It tells you nothing...
which is exactly what this button does!

Again, placing the within the screentip (as opposed to the supertip) will be ineffective.