Please Note: This article is written for users of the following Microsoft Word versions: 2007, 2010, 2013, and 2016. 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: Placing Text in Empty Table Cells.
by Allen Wyatt
(last updated November 12, 2016)
When Liliana has a table in a document, the company requirements state that each cell in the table must have something in it. This means that if a cell is otherwise empty, it must contain either a dash or the letters "N/A." Liliana wonders if there is a way that she can automatically place either a dash or "N/A" into the empty cells of a table.
The only way to do this is with a macro. You can create one that steps through each of the cells in a table and checks to see what it contains. If the cell is empty, then the text you desire is placed in the cell. Here is an example macro that works on all the tables in a document, checking each cell:
Sub ProcCells1() Dim tTable As Table Dim cCell As Cell Dim sTemp As String sTemp = "N/A" For Each tTable In ActiveDocument.Range.Tables For Each cCell In tTable.Range.Cells 'An apparently empty cell contains an end of cell marker If Len(cCell.Range.Text) < 3 Then cCell.Range = sTemp End If Next Next Set oCell = Nothing Set tTable = Nothing End Sub
If you decide that you want your empty cells to contain a dash instead of "N/A", all you need to do is change the text placed in the sTemp variable. If you prefer a macro that works with a single table instead of all the tables in a document, the following variation works great:
Sub ProcCells2() Dim tTable As Table Dim cCell As Cell Dim sTemp As String sTemp = "N/A" If Selection.Information(wdWithInTable) Then Set tTable = Selection.Tables(1) For Each cCell In tTable.Range.Cells 'An apparently empty cell contains an end of cell marker If Len(cCell.Range.Text) < 3 Then cCell.Range = sTemp End If Next End If Set oCell = Nothing Set tTable = Nothing End Sub
In order to use this variation, just make sure the insertion point is within the table you wan to process before you run the macro.
If you prefer to not use macros, then there is a different approach you could consider—simply make sure that your table contains the desired dashes or "N/A" text before you start putting information in it. You could create a table template that contains a dash or "N/A" in every cell, and then as you place other information in the cell you simply delete the default text. (The various ways you can set up table templates is covered in other issues of WordTips.)
WordTips is your source for cost-effective Microsoft Word training. (Microsoft Word is the most popular word processing software in the world.) This tip (10773) applies to Microsoft Word 2007, 2010, 2013, and 2016. You can find a version of this tip for the older menu interface of Word here: Placing Text in Empty Table Cells.
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!
If you have a common table layout that you want to use again and again, you'd benefit by having an easy way to save that ...Discover More
In WordPerfect terminology, a split page allows you to put information side-by-side on opposite halves of the page. If ...Discover More
If you want to have Word highlight rows in a table that contain a certain character, you need to resort to using a macro. ...Discover More
FREE SERVICE: Get tips like this every week in WordTips, a free productivity newsletter. Enter your address and click "Subscribe."
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.