Shortcuts to Change Text Colors

by Allen Wyatt
(last updated August 19, 2017)

2

As an editor, Gillian likes to color-code sections of text for authors. She would, therefore, like to be able to create multiple keyboard shortcuts to highlight in different colors once she has selected text (e.g., Alt+G for green, Alt+B for blue, and Alt+Y for yellow). Gillian wonders if this is possible.

Yes, it is possible, but you'll need to use a macro to do the work. Before doing so, however, you'll need to figure out what shortcut keys you want to use. Gillian suggests using Alt+G, Alt+B, and Alt+Y. You can do this, but it may conflict with other uses of the Alt key (like accessing the ribbon tools from the keyboard). It may be better to use shortcut keys such as Shift+Alt+G, Shift+Alt+G, and Shift+Alt+Y.

To record a macro that sets text colors, just follow these steps:

  1. Select a word or phrase. (It doesn't really matter what you select.)
  2. Display the Developer tab of the ribbon.
  3. In the Code group, click the Record Macro tool. Word displays the Record Macro dialog box. (See Figure 1.)
  4. Figure 1. The Record Macro dialog box.

  5. In the Name field, enter a macro name that is descriptive of what you are doing. (For instance, if you are recording a macro to make text blue, you could use the name MakeTextBlue.)
  6. Using the Store Macro In drop-down list, choose All Documents (Normal.dotm).
  7. Click the Keyboard button. Word closes the Record Macro dialog box and shortly displays the Customize Keyboard dialog box. Note that the macro name you supplied in step 4 is shown in the dialog box and the insertion point is blinking in the Press New Shortcut Key box. (See Figure 2.)
  8. Figure 2. The Customize Keyboard dialog box.

  9. Press the shortcut key you want used to invoke the macro. (For instance, you might press Shift+Alt+B since your macro will make the selected text blue.)
  10. Click the Assign button. The shortcut key is now shown as assigned to the macro.
  11. Click Close. Word closes the Customize Keyboard dialog box and the macro recorder is running.
  12. Press Ctrl+D. Word displays the Font dialog box. (See Figure 3.)
  13. Figure 3. The Font dialog box.

  14. Using the Font Color drop-down list, pick whatever color of blue you want.
  15. Click OK to close the Font dialog box.
  16. Click the Stop Recording tool in the Code group.

At this point your macro is complete, and you can invoke it by selecting text and then pressing Shift+Alt+B. You can create similar macros to set your other colors, as desired.

There is one part of the above steps that needs to be explained. Note the way the Font dialog box is displayed in steps 10 through 12. You might think you can simply display the Home tab of the ribbon and use the tools located there to set the font color. The problem is that, in test, this didn't always result in the step (setting the color) being recorded by the macro recorder. The font on the screen changed color, but the step didn't show up in the macro. The only way to reliably set the font color and have it recorded in the macro was to display the Font dialog box, as noted.

If you were to examine the macro you just recorded, you would see that it looks like this:

Sub MakeTextBlue()
'
' MakeTextBlue Macro
'
'
    With Selection.Font
        .Name = "+Body"
        .Size = 11
        .Bold = False
        .Italic = False
        .Underline = wdUnderlineNone
        .UnderlineColor = wdColorAutomatic
        .StrikeThrough = False
        .DoubleStrikeThrough = False
        .Outline = False
        .Emboss = False
        .Shadow = False
        .Hidden = False
        .SmallCaps = False
        .AllCaps = False
        .Color = 12611584
        .Engrave = False
        .Superscript = False
        .Subscript = False
        .Spacing = 0
        .Scaling = 100
        .Position = 0
        .Kerning = 0
        .Animation = wdAnimationNone
        .Ligatures = wdLigaturesNone
        .NumberSpacing = wdNumberSpacingDefault
        .NumberForm = wdNumberFormDefault
        .StylisticSet = wdStylisticSetDefault
        .ContextualAlternates = 0
    End With
End Sub

If you think this is a long macro for a single step (setting the text color), you'd be right. It is a classic example of the macro recorder being overly comprehensive in what it records. You could easily pare down the macro to the following:

Sub MakeTextBlue()
    Selection.Font.Color = 12611584
End Sub

If you wanted even a bit more flexibility in the macro, you could also use the following:

Sub MakeTextBlue()
    Selection.Font.Color = RGB(0, 0, 255)
End Sub

You can then easily adjust the RGB value used for the color by playing with the three parameters used with the RGB function.

Note:

If you would like to know how to use the macros described on this page (or on any other page on the WordTips sites), I've prepared a special page that includes helpful information. Click here to open that special page in a new browser tab.

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

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

Changing Strikethrough Lines

Want to change the way a strikethrough line appears? It's not as easy as you think, as you find out in this tip.

Discover More

Duplexing Documents, by Default

If you have a printer that will print on both sides of a piece of paper, you may want to use that ability within Word. ...

Discover More

Rotating a Text Box

Text boxes are integral to the layout of many slides, especially if they contain text. Here's how to change the angle at ...

Discover More

Comprehensive VBA Guide Visual Basic for Applications (VBA) is the language used for writing macros in all Office programs. This complete guide shows both professionals and novices how to master VBA in order to customize the entire Office suite for their needs. Check out Mastering VBA for Office 2010 today!

More WordTips (ribbon)

Letters Bunched Up at the Left of the Page

If your documents don't behave as you expect, it may take a bit of sleuthing to figure out what is going on. This tip ...

Discover More

Smushing Text Together

Word gives you control over how your text appears on the page. This includes adjusting how close letters are to each ...

Discover More

Understanding Underlines

Part of the formatting you can add to your text is underlining. That simple word (underlining) represents quite a few ...

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 9 - 6?

2017-11-13 16:17:08

Jonathan

Massively helfpul! Very rarely comment on this sort of thing but couldn't find anything else out there that helped me do this! Thank you!!


2017-08-22 07:48:33

Gillian

Thank you very much!


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.