Minimizing the Ribbon for a Document

by Allen Wyatt
(last updated February 21, 2015)

1

Donna is in charge of preparing a document that will be used throughout her company. She would like the document, when opened, to "minimize" the ribbon at the top of the screen and then, when closed, return the ribbon to its "pre-opening" state. This would be done to provide the maximum screen area for the document. Donna figures that this will take a macro to accomplish, but she's not sure which commands to use to accomplish the task.

There is an amazing paucity of information available on working with the ribbon in VBA. In fact, the only method we've been able to locate that will minimize the ribbon is the following:

ActiveWindow.ToggleRibbon

This method is the same as pressing Ctrl+F1. It toggles the ribbon, changing it from maximized to minimized, and vice-versa. This, of course, is not what Donna wants to do; she wants to make sure it is minimized. Using the ToggleRibbon method, you can "fudge" a way to figure out whether the ribbon is minimized or not. Consider the following example macros.

Dim w As Variant
Dim h1 As Long
Dim h2 As Long
Dim StartedWithRibbon As Boolean

Private Sub Document_Open()
    Set w = ActiveWindow
    h1 = w.UsableHeight
    w.ToggleRibbon
    h2 = w.UsableHeight
    If h1 < h2 Then
        StartedWithRibbon = False
    Else
        StartedWithRibbon = True
        w.ToggleRibbon
    End If
End Sub
Private Sub Document_Close()
    Set w = ActiveWindow
    h1 = w.UsableHeight
    w.ToggleRibbon
    h2 = w.UsableHeight
    If h2 < h1 Then
        If StartedWithRibbon Then w.ToggleRibbon
    Else
        If Not StartedWithRibbon Then w.ToggleRibbon
    End If
End Sub

There are actually two macros here, one automatically triggered when a document is opened and the other triggered when it is closed. The macros check the height of the active window, storing it in the h1 variable. It then toggles the ribbon and again checks the active window height, storing it in h2. By comparing the two values, you can determine whether the ribbon is minimized or not and then act accordingly.

WordTips is your source for cost-effective Microsoft Word training. (Microsoft Word is the most popular word processing software in the world.) This tip (8515) applies to Microsoft Word 2007, 2010, and 2013.

Author Bio

Allen Wyatt

With more than 50 non-fiction books and numerous magazine articles to his credit, Allen Wyatt is an internationally recognized author. He  is president of Sharon Parq Associates, a computer and publishing services company. ...

MORE FROM ALLEN

Using Extend Mode

One of the most overlooked shortcut keys in Word has to be the extend key. Yet, learning how to use this simple key can save ...

Discover More

Inserting the Author Name

Did you know that Word tries to keep track of who the author of a document is? This information can be easily added to the ...

Discover More

Nesting IF Worksheet Functions

The IF worksheet function is very handy to make conditional evaluations. You are not limited to a single IF comparison, ...

Discover More

The First and Last Word on Word! Bestselling For Dummies author Dan Gookin puts his usual fun and friendly candor back to work to show you how to navigate Word 2013. Spend more time working and less time trying to figure it all out! Check out Word 2013 For Dummies today!

More WordTips (ribbon)

Using Message Boxes

If your macro needs to communicate with a user, one simple way to do it is to use a message box. Here's how to use this ...

Discover More

Bumping Numbers in a Document

If your documents include words that contain numbers (such as a list of parts numbers) you may need a way to increment those ...

Discover More

Accessing Paragraphs in a Macro

Need to process a document, paragraph by paragraph, in a macro? It's easy to do once you understand that Word's object model ...

Discover More
Subscribe

FREE SERVICE: Get tips like this every week in WordTips, a free productivity newsletter. Enter your address and click "Subscribe."

View most recent newsletter.

Comments

If you would like to add an image to your comment (not an avatar, but an image to help in making the point of your comment), include the characters [{fig}] in your comment text. You’ll be prompted to upload your image when you submit the comment. Maximum image size is 6Mpixels. Images larger than 600px wide or 1000px tall will be reduced. Up to three images may be included in a comment. All images are subject to review. Commenting privileges may be curtailed if inappropriate images are posted.

What is 8 - 2?

2016-07-25 19:44:20

Mark Delorme

I understand the concept behind this script, and ideally, it should work as intended, although the ActiveWindow.UsableHeight command isn't returning the updated height property after the .ToggleRibbon command.

Any idea as to how I can get the 'updated' .UsableHeight property following the .ToggleRibbon command?

I've tried specifying specific values for the usable height, although depending on the screen size, this property is variable and inconsistent with different monitors. I could try to set minimum/maximum values for H1/H2, although even so, the values returned are too variable between different computers.


This Site

Got a version of Word that uses the ribbon interface (Word 2007 or later)? This site is for you! If you use an earlier version of Word, visit our WordTips site focusing on the menu interface.

Newest Tips
Subscribe

FREE SERVICE: Get tips like this every week in WordTips, a free productivity newsletter. Enter your address and click "Subscribe."

(Your e-mail address is not shared with anyone, ever.)

View the most recent newsletter.