Backstage view in Excel 2010
Ron de Bruin (last update 29-Dec-2009)
Go back to the Excel tips page
Read this carfully

On this page are the first Backstage examples that I create in Beta 2 of Excel 2010.
Note: I will update this page every time I learn or find something new that is useful.

If you want to insert the RibbonX from this page into a workbook or want to edit the RibbonX from
the example workbooks I suggest you download the new version of the Custom UI Editor here:
http://openxmldeveloper.org/archive/2006/05/26/CustomUIeditor.aspx

This version of the Custum UI Editor gives you a option to insert a customUI.xml file for Excel 2007-2010
and/or a customUI14.xml file only for Excel 2010 into your 2007-2010 workbook.

Note: If there is no customUI14.xml file when you open the workbook in Excel 2010,
it will load the customUI.xml file.

When you open a Excel file in the UI Editor you can right click on the file name and choose :
Office 2010 Custom UI Part




It creates the customUI14.xml file and you can enter or paste your RibbonX in the right window now.








What is Backstage view ?

In Excel 2010 you notice that the big round circle in the top left corner named Office Button is changed to
File because a lot of people didn't understand that the Ofice Button was clickable in Excel 2007.

When you click on File you see 6 buttons and 6 tabs in Backstage View (the Backstage view is full screen).
Note
: the names and idMso's in red in the table are the six Tabs.

Name
Save
Save As
Open
Close
Info
Recent
New
Print
Share
Help

Options
Exit
idMso
FileSave
FileSaveAs
FileOpen
FileClose
TabInfo
TabRecent
TabNew
TabPrint
TabShare
TabHelp

ApplicationOptionsDialog
FileExit


Download this file if you want to find all the idMso's in Backstage View and in the ribbon.
Excel 2010 ControlIDs (819 kb)


Backstage view examples

You can download a zip file here with a test workbook for every basic example below.

22-nov-2009, 6 files
Download example files




Hide buttons and tabs in Backstage view

The RibbonX below will hide every button and tab in Backstage view.
Name example file : Hide Backstage View.xlsm
<customUI xmlns="http://schemas.microsoft.com/office/2009/07/customui">
    <backstage>
        <button idMso="FileSave" visible="false"/>
        <button idMso="FileSaveAs" visible="false"/>
        <button idMso="FileOpen" visible="false"/>
        <button idMso="FileClose" visible="false"/>
        <button idMso="ApplicationOptionsDialog" visible="false"/>
        <button idMso="FileExit" visible="false"/>
        <tab idMso="TabInfo" visible="false"/>
        <tab idMso="TabRecent" visible="false"/>
        <tab idMso="TabNew" visible="false"/>
        <tab idMso="TabPrint" visible="false"/>
        <tab idMso="TabShare" visible="false"/>
        <tab idMso="TabHelp" visible="false"/>
    </backstage>
</customUI>



Add button in Backstage View in Excel 2010

This example add a 97-2003 Save button after the Save As button.
Name example file : Add button in Backstage View.xlsm

See the macro named "save2003" in the VBA editor that will run when you click on the button.







Add custom Tab to Backstage view

This example add a custom tab with four groups in two columns to Backstage View.
Note: I this basic example I only add a few controls to the groups (button, label and image)
Name example file : Add Custom Tab to Backstage View.xlsm




The RibbonX below will add a custom Tab to Backstage View with four groups
There are three parts in the RibbonX

Black part
This will add the custom tab and tell Excel where we want it (In Backstage)
Note: there are 3 open lines in the begin and 3 close lines at the end of the RibbonX

Blue part
In this part we create two groups (1 and 2) in the first column of the tab
See that we start with <firstColumn> and end with </firstColumn>

In the first group we add a big primary button between <primaryItem> and </primaryItem>
And we add two normal buttons in a vertical layoutContainer so the buttons are below each other

In the second group we add two normal buttons in a vertical layoutContainer so the buttons are below each other. In the line that add the buttons I add isDefinitive="true" so it close Backstage View when you click
on the button

Green part
In this part we create two groups (3 and 4) in the second column of the tab
See that we start with <secondColumn> and end with </secondColumn>

In group three we add two normal buttons in a vertical layoutContainer so the buttons are below each other
We also add a label control for each button to give some information about the button
Note: For a empty line I use " " in the label control <labelControl id="Label1" label=" "/>

In group four we add two normal buttons in a vertical layoutContainer so the buttons are below each other
But inside this container we a horizontal container for a image and a label control to create a bulleted list
below each button. Note: I use a built-in imageMso for the bulleted list in this example. If you want to use the same image that you see in other backstage tabs you must insert a custum image into the workbook. you can add a custom image into the workbook by clicking on the Insert icons button in the Custom UI Editor.

This is the image, right click on it and choose Save Picture As to save it on your desktop
so you can insert it into your file with the Custom UI Editor.



Then change imageMso="BrowseSelector" to image="BillboardBullet" in the RibbonX.

<customUI xmlns="http://schemas.microsoft.com/office/2009/07/customui">
    <backstage>
        <tab id="MyTab" insertAfterMso="TabInfo" label="MyTab" columnWidthPercent="30">

            <firstColumn>
                <group id="FirstGroup" label="Group One" helperText="Information about the first group">
                    <primaryItem>
                        <button id="BigButton" label="Primary Button" onAction="PrimaryMacro"/>
                    </primaryItem>
                    <topItems>
                        <layoutContainer id="layout1" layoutChildren="vertical">
                            <button id="Button1" label="Button 1" onAction="Macro1"/>
                            <button id="Button2" label="Button 2" onAction="Macro2"/>
                        </layoutContainer>
                    </topItems>
                </group>
                <group id="SecondGroup" label="Group Two" helperText="Information about the second group">
                    <topItems>
                        <layoutContainer id="layout2" layoutChildren="vertical">
                            <button id="Button3" label="Button 3" isDefinitive="true" onAction="Macro3"/>
                            <button id="Button4" label="Button 4" isDefinitive="true" onAction="Macro4"/>
                        </layoutContainer>
                    </topItems>
                </group>
            </firstColumn>

            <secondColumn>
                <group id="ThirdGroup" label="Group three" helperText="Information about the third group">
                    <topItems>
                        <layoutContainer id="layout3" layoutChildren="vertical">
                            <labelControl id="Label1" label=" "/>
                            <button id="Button5" label="Button 5" onAction="Macro5"/>
                            <labelControl id="Label2" label="Information row 1 about button 5"/>
                            <labelControl id="Label3" label=" "/>
                            <button id="Button6" label="Button 6" onAction="Macro6"/>
                            <labelControl id="Label4" label="Information row 1 about button 6"/>
                            <labelControl id="Label5" label="Information row 2 about button 6"/>
                        </layoutContainer>
                    </topItems>
                </group>
                <group id="FourthGroup" label="Group four" helperText="Information about the fourth group">
                    <topItems>
                        <layoutContainer id="layout4" layoutChildren="vertical">
                            <labelControl id="Label6" label=" "/>
                            <button id="Button7" label="Button 7" onAction="Macro7"/>
                            <layoutContainer id="layout5" layoutChildren="horizontal">
                                <imageControl id="image1" imageMso="BrowseSelector"/>
                                <labelControl id="Label7" label="Information row 1 about this button"/>
                            </layoutContainer>
                            <labelControl id="Label8" label=" "/>
                            <button id="Button8" label="Button 8" onAction="Macro8"/>
                            <layoutContainer id="layout6" layoutChildren="horizontal">
                                <imageControl id="image2" imageMso="BrowseSelector"/>
                                <labelControl id="Label9" label="Information row 1 about this button"/>
                            </layoutContainer>
                            <layoutContainer id="layout7" layoutChildren="horizontal">
                                <imageControl id="image3" imageMso="BrowseSelector"/>
                                <labelControl id="Label10" label="Information row 2 about this button"/>
                            </layoutContainer>
                        </layoutContainer>
                    </topItems>
                </group>
            </secondColumn>

        </tab>
    </backstage>
</customUI>




Dictator workbook With only a CustomTab in Backstage view

If you only want to see your custom tab in Backstage View and not the other tabs and also want to get rid
of the Ribbon and the QAT you must add a few lines to the RibbonX in the example above.

Replace the second line in the RibbonX from the example above

    <backstage>


With
    <ribbon startFromScratch="true">
        <contextualTabs>
            <tabSet idMso="TabSetSmartArtTools" visible="false"/>
            <tabSet idMso="TabSetChartTools" visible="false"/>
            <tabSet idMso="TabSetDrawingTools" visible="false"/>
            <tabSet idMso="TabSetPictureTools" visible="false"/>
            <tabSet idMso="TabSetPivotTableTools" visible="false"/>
            <tabSet idMso="TabSetHeaderAndFooterTools" visible="false"/>
            <tabSet idMso="TabSetTableToolsExcel" visible="false"/>
            <tabSet idMso="TabSetPivotChartTools" visible="false"/>
            <tabSet idMso="TabSetInkTools" visible="false"/>
        </contextualTabs>
    </ribbon>

    <backstage>
        <button idMso="FileSave" visible="false"/>
        <button idMso="FileSaveAs" visible="false"/>
        <button idMso="FileOpen" visible="false"/>
        <button idMso="FileClose" visible="false"/>
        <button idMso="ApplicationOptionsDialog" visible="false"/>
        <button idMso="FileExit" visible="false"/>
        <tab idMso="TabInfo" visible="false"/>
        <tab idMso="TabRecent" visible="false"/>
        <tab idMso="TabNew" visible="false"/>
        <tab idMso="TabPrint" visible="false"/>
        <tab idMso="TabShare" visible="false"/>
        <tab idMso="TabHelp" visible="false"/>




Add Task to the Share Tab in the category Share and in the category File Types

This example add a Task with one button to the Share Tab in the category Share and in the
category File Types.
Name example file : Backstage View 1.xlsm




Add task/button to the Help Tab in the category Support

This example add a button to the Help Tab in the category Support
Name example file : Backstage View 2.xlsm




Add button to the Share Tab in the "Send Using E-mail" task

This example add custom group to the Share Tab in the "Send Using E-mail" task.
Name example file : Backstage View 3.xlsm



More coming soon



More Information about Backstage


Introduction to the Office 2010 Backstage View for Developers
http://msdn.microsoft.com/en-us/library/ee691833(office.14).aspx

Customizing the Office 2010 Backstage View for Developers
http://msdn.microsoft.com/en-us/library/ee815851(office.14).aspx

Trang Luu's Custom UI Editor tool (Beta 2 schema included)
http://openxmldeveloper.org/archive/2006/05/26/CustomUIeditor.aspx

Office 2010 Schema: Fluent User Interface Schema
http://download.microsoft.com/download/F/F/3/FF36D32F-4080-494B-83B8-49DADC68A999/Office2010FluentUISchema.exe

Office 2010 Help Files: Office Fluent User Interface Control Identifiers
http://download.microsoft.com/download/0/7/B/07BF35CE-4FA1-4DED-B4AA-3801D4E49F89/Office2010ControlIDs.exe