Displaying a Column Number

by Allen Wyatt
(last updated August 4, 2018)

3

Deena has a document that is formatted to use three columns. She would like a way to display and print, automatically, a column number at the top of each column. Thus, the columns on page 1 would be numbered 1 through 3, those on page 2 would be 4 through 6, etc.

There is no way to do this automatically, but a workaround is to create a macro that will print the document with column numbers in the page header. All you need to do is make sure that the header has tab stops set to match where you want the column numbers to appear.

Sub ColumnHeaders()
    Dim p As Long
    Dim tp As Long
    Dim c As Integer
    Dim tc As Integer
    Dim h As String
    Dim ch As String

    ' Get total pages
    tp = ActiveDocument.Content.ComputeStatistics(wdStatisticPages)
    ' Get number of columns
    tc = ActiveDocument.Sections(1).PageSetup.TextColumns.Count
    ' Save current header
    ch = ActiveDocument.Sections(1).Headers(wdHeaderFooterPrimary).Range.Text

    For p = 1 To tp
        h = ""
        For c = 1 To tc
            h = h & Trim(Str(p + (c - 1) + (2 * p - 2))) & vbTab
        Next c
        h = Left(h, Len(h) - 1)
        ActiveDocument.Sections(1).Headers(wdHeaderFooterPrimary).Range.Text = h
        ActiveDocument.PrintOut Range:=wdPrintFromTo, _
          From:=Trim(Str(p)), To:=Trim(Str(p))
    Next p
    
    If Len(ch) > 1 Then
        ' Restore previous header
        ActiveDocument.Sections(1).Headers(wdHeaderFooterPrimary).Range.Text = ch
    Else
        ' There is no previous header
        ActiveDocument.Sections(1).Headers(wdHeaderFooterPrimary).Range.Delete
    End If
End Sub

The macro actually prints out each page of the document individually. It assumes there is only a single section in the document. The number of columns for that single section is determined, and then this count is used in putting together the header for each page. The header consists of the column numbers separated by tabs. The header is constructed for each page, and then each page is printed.

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 (12826) 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

Adding Diagonal Borders

Want to add a border diagonally, through the middle of a table cell? It's easy if you follow the formatting steps ...

Discover More

Retrieving Worksheet Names

Want to grab the names of all the worksheets in a workbook? Here's how you can stuff all those names into the cells of a ...

Discover More

Converting from Open Office to Word

If you have a number of documents in Open Office format, you may want to work with them in Word. There are several ways ...

Discover More

Create Custom Apps with VBA! Discover how to extend the capabilities of Office 2013 (Word, Excel, PowerPoint, Outlook, and Access) with VBA programming, using it for writing macros, automating Office applications, and creating custom applications. Check out Mastering VBA for Office 2013 today!

More WordTips (ribbon)

Adding Vertical Lines between Columns

Columns can be an integral part of your document layout. In some instances you may want Word to insert a vertical line ...

Discover More

Using Parallel Columns

Users of WordPerfect know what parallel columns are. There is no such capability in Word, but there are ways you can ...

Discover More

Changing the Number of Columns

If you need to change the number of columns used in a portion of your document, it's easy to do when you use the Columns ...

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 eight minus 5?

2017-01-06 11:44:35

Aprile Morgan

If all the document contained were the columns, couldn't she put in a heading with styles to auto number? She would just have to line them up so they match three columns. Not sure this would work but worth a try.


2013-12-09 08:56:50

Jim Swindle

Keith - Think of a macro as a script that automates something you want to do over and over. For an overview, in Word click the ? button. Then type
record macro
and click Search. You'll find information about recording or running or writing a macro.


2013-12-08 15:08:54

Keith

I do not understand the word "macro" so could not make use of this tip. I would like to know how many others are in the same boat,


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.