Please Note: This article is written for users of the following Microsoft Word versions: 2007 and 2010. If you are using an earlier version (Word 2003 or earlier), this tip may not work for you. For a version of this tip written specifically for earlier versions of Word, click here: Printing Color Separations with VBA.

Printing Color Separations with VBA

by Allen Wyatt
(last updated April 2, 2013)

Word does not have the inherent capability to print color separations. Instead, you typically must use a full-featured desktop publishing program such as InDesign to accomplish this task. That being said, you can perform a rudimentary form of color separation by simply changing the text color you don't want to print to white, and then printing the document. Reversing the process will then print the other color.

For instance, the following VBA macro will allow you to print color-separated text for a document that contains both red and black text:

Sub PrintSeps()
    ActiveDocument.Save
    Selection.HomeKey Unit:=wdStory

    Selection.Find.ClearFormatting
    Selection.Find.Replacement.ClearFormatting

    'Change Red to White
    Selection.Find.Font.ColorIndex = wdRed
    Selection.Find.Replacement.Font.ColorIndex = wdWhite
    With Selection.Find
        .Text = ""
        .Replacement.Text = ""
        .Forward = True
        .Wrap = wdFindContinue
        .Format = True
        .MatchCase = False
        .MatchWholeWord = False
        .MatchWildcards = False
        .MatchSoundsLike = False
        .MatchAllWordForms = False
    End With
    Selection.Find.Execute Replace:=wdReplaceAll
    ActiveDocument.PrintOut

    'Change White back to Red
    Selection.Find.Font.ColorIndex = wdWhite
    Selection.Find.Replacement.Font.ColorIndex = wdRed
    Selection.Find.Execute Replace:=wdReplaceAll

    'Change Auto to White
    Selection.Find.Font.ColorIndex = wdAuto
    Selection.Find.Replacement.Font.ColorIndex = wdWhite
    Selection.Find.Execute Replace:=wdReplaceAll

    'Change Black to White
    Selection.Find.Font.ColorIndex = wdBlack
    Selection.Find.Replacement.Font.ColorIndex = wdWhite
    Selection.Find.Execute Replace:=wdReplaceAll

    'Change Red to Black
    'This is done so that Red will print as Black
    'On some printers, non-black colors always
    'print as a shade of gray. You want them only
    'as black
    Selection.Find.Font.ColorIndex = wdRed
    Selection.Find.Replacement.Font.ColorIndex = wdBlack
    Selection.Find.Execute Replace:=wdReplaceAll

    ActiveDocument.PrintOut

    ActiveWindow.Close SaveChanges:=wdDoNotSaveChanges
End Sub

Note a couple of things about the PrintSeps macro. First, it saves your document. This is done because when the macro is done running, it throws out the document. Saving allows you to load the document from disk at a later time. The other thing to note is that this works only for documents that contain only red and black text. If you have other colors, those colors will print on both passes. If you have white text, it will print with the red pass. If you have graphics, no separation is done on them. (If you have graphics and want them separated, you definitely should be using a desktop publishing program.)

WordTips is your source for cost-effective Microsoft Word training. (Microsoft Word is the most popular word processing software in the world.) This tip (11243) applies to Microsoft Word 2007 and 2010. You can find a version of this tip for the older menu interface of Word here: Printing Color Separations with VBA.

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

Jumping between Columns

Need to jump from one column to another on a page? You can use the handy shortcut keys described in this tip.

Discover More

Easily Changing Links

If you have linked information in your worksheets, you may want a way you can easily change the targets to which those links ...

Discover More

Pop-up Windows in Word

Want to add a small pop-up window over a word in your document? There is no way to do this directly in Word, but you can use ...

Discover More

Learning Made Easy! Quickly teach yourself how to format, publish, and share your content using Word 2013. With Step by Step, you set the pace, building and practicing the skills you need, just when you need them! Check out Microsoft Word 2013 Step by Step today!

MORE WORDTIPS (RIBBON)

Easily Changing Print Order

You can change the order in which pages are printed (normal or reversed) using the Print dialog box or the print settings in ...

Discover More

Doubling Your Money

Make your money last longer by using your head when printing labels. Here's a great example of how you can double the usage ...

Discover More

Making Banners in Word

Word can be used for printing a variety of document types. You may want to use the program to print a festive banner for a ...

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 for this tip:

There are currently no comments for this tip. (Be the first to leave your comment—just use the simple form above!)

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.

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.

Links and Sharing
Share