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

Printing Color Separations with VBA

by Allen Wyatt
(last updated January 7, 2015)

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 (1795) applies to Microsoft Word 97, 2000, 2002, and 2003. You can find a version of this tip for the ribbon interface of Word (Word 2007 and later) 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

Making the Formula Bar Persistent

If your Formula bar disappears when you load a workbook, it could be due to the presence of a macro that turns it off. This ...

Discover More

Using the COLUMN Function

Need to know the column number for use in a formula? The worksheet function you want is the COLUMN function, described in ...

Discover More

Flipping Landscape Orientation when Printing

When printing a worksheet, you may want to rotate the output on the page to fit a certain orientation. Excel doesn't allow ...

Discover More

Do More in Less Time! Are you ready to harness the full power of Word 2013 to create professional documents? In this comprehensive guide you'll learn the skills and techniques for efficiently building the documents you need for your professional and your personal life. Check out Word 2013 In Depth today!

MORE WORDTIPS (MENU)

Correct Line Numbers When Printing Selections

Line numbers can be indispensable on some types of documents. When you print a portion of a document (a selection) Word won't ...

Discover More

Opening and Printing a Document

Want a quick, fast way to print a Word document? Here's a way that can't be beat!

Discover More

Selecting a Paper Source

Some printers allow you to print on paper from different sources. For instance, a printer may have multiple paper trays, each ...

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 menu interface (Word 97, Word 2000, Word 2002, or Word 2003)? This site is for you! If you use a later version of Word, visit our WordTips site focusing on the ribbon 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