Please Note: This article is written for users of the following Microsoft Word versions: 2007, 2010, and 2013. 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: Setting a Default Table Border Width.

Setting a Default Table Border Width

by Allen Wyatt
(last updated April 26, 2014)

2

When you insert a table in Word, a border is automatically created for each cell in the table. This border is a single line, one-half point in weight. Unfortunately, Word provides no way for you to change the default line width you use when creating the table. While it is true you can pick a line width in the Borders and Shading dialog box, this weight is reset to one-half point when you insert a new table.

If you want some other line width, such as three-quarters of a point, you have a problem. You must manually select any new table and format the borders so they are the desired width. If you work with lots of tables, this can quickly become a hassle. You could, of course, create a table style, but applying a table style can give uneven results if all you want to do is change the line width or if you are working with a document where there has been a lot of explicit formatting applied to the tables.

Perhaps the best way around this problem is to write a macro. Even though this may not be the most ideal solution, it certainly is easier than manually changing every table in the document.

The following macro, FixCellBorders, steps through every cell in every table in your document and makes sure the minimum line weight is three-quarters of a point. It does this by checking out the current line settings, and then making the adjustment only if necessary.

Sub FixCellBorders()
    ' Work through all tables in document
    For Each objTable In ActiveDocument.Tables
        ' Work through all cells in each table
        For Each objCell In objTable.Range.Cells
            ' Work through all borders in each cell
            For Each objBorder In objCell.Borders
                ' Check if line weight is less than 0.75 pt
                If objBorder.LineWidth = wdLineWidth025pt _
                  Or objBorder.LineWidth = wdLineWidth050pt Then
                    ' too thin, change it
                    objBorder.LineWidth = wdLineWidth075pt
                End If
            Next objBorder
        Next objCell
    Next objTable
End Sub

As you can imagine, the macro is not terribly fast since it looks at all four borders for every cell in every table of your document. The advantage, however, is that the macro will only modify the weight of any cell border that is at one-quarter or one-half point. This means that any manual formatting you have done for different line widths will not change.

If you are looking for a bit faster macro, the following (FixTableBorders) will do the trick. Instead of looking at individual cells, it works on entire tables. The difference, however, is that it resets every border of every table to three-quarters of a point, using a single line. If this fits your needs, however, it is definitely the easier (faster) way to go.

Sub FixTableBorders()
    For Each objTable In ActiveDocument.Tables
        With objTable
            With .Borders(wdBorderLeft)
                .LineStyle = wdLineStyleSingle
                .LineWidth = wdLineWidth075pt
            End With
            With .Borders(wdBorderRight)
                .LineStyle = wdLineStyleSingle
                .LineWidth = wdLineWidth075pt
            End With
            With .Borders(wdBorderTop)
                .LineStyle = wdLineStyleSingle
                .LineWidth = wdLineWidth075pt
            End With
            With .Borders(wdBorderBottom)
                .LineStyle = wdLineStyleSingle
                .LineWidth = wdLineWidth075pt
            End With
            With .Borders(wdBorderHorizontal)
                .LineStyle = wdLineStyleSingle
                .LineWidth = wdLineWidth075pt
            End With
            With .Borders(wdBorderVertical)
                .LineStyle = wdLineStyleSingle
                .LineWidth = wdLineWidth075pt
            End With
        End With
    Next objTable
End Sub

WordTips is your source for cost-effective Microsoft Word training. (Microsoft Word is the most popular word processing software in the world.) This tip (13081) applies to Microsoft Word 2007, 2010, and 2013. You can find a version of this tip for the older menu interface of Word here: Setting a Default Table Border Width.

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 Sidebars

When designing your document, you may want to use sidebars like you see in magazines and some books. This tip explains the ...

Discover More

Making VLOOKUP Case Sensitive

The VLOOKUP function, like other lookup functions in Excel, is not case sensitive. In other words, it doesn't matter whether ...

Discover More

Condensing and Expanding Headings

When working in Outline view, you'll undoubtedly have the need to expand or condense information under your headings. It is ...

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)

Entering Tabs in a Table

When press the Tab key while entering info into a table, Word dutifully moves to the next table cell. If you don't want to do ...

Discover More

Keeping Table Rows Together

When you create a table that extends beyond a single page, you may want to make sure that the information in a table row ...

Discover More

Changing Spacing Between Table Cells

Need to adjust the space between individual cells in a table? Word gives you a good deal of control over this spacing, as ...

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 8Mpixels. 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 more than 8?

2016-07-07 06:35:59

Ken Endacott

Both of these macros have problems that raise error messages. The first macro changes all borders in each cell, but cells can have six borders which includes the two diagonal borders. If the diagonal borders are not present then an error occurs if you try to change their line widths.

The second macro will raise an error on single cell tables because there are no horizontal or vertical borders (as distinct from outside borders) and the macro is trying to change the line width of non existent borders.

The fix for both of these macros is the same. To skip over the statements that raise errors, add the line:
On Error Resume Next
at the start of the macro after Sub FixTableBorders().


2015-09-27 09:42:25

Mike Heron

Hi. Been searching for hours for a solution. Tried your FixCellBorders macro as it appeared to be the closest so far to what I wanted, but it bugs out on the line objBorder.LineWidth = wdLineWidth075pt

I was originally looking for a macro which can change all lines of a certain line width and line colour in all the tables in a Word 2010 document to another width and colour (whilst leaving any others colours or 'clear' borders alone. If you could assist it'd be much appreciated! Mike


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.