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.
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.
Learn more about Allen...
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: Finding a Cell Reference.
When you are working with tables, you often need to know the reference of a particular cell. For certain functions or fields, Word expects the cell reference to be specified using the Column/Row format that many readers are familiar with in Excel. For instance, A1 is the top-left cell, B1 is one cell to the right, and A2 is one cell below the first cell.
Unfortunately, there is no inherent capability of Word to inform you of the reference of a cell you have selected. You can get around this problem by using a macro. The following example macro will return, in the status bar, the current column and row in which the insertion point is located.
Sub CellRef() Const clngAOffset As Long = 64 ' Word's maximum columns is 64, but this procedure ' can cope up to clngMaxCols columns Const clngMaxCols As Long = 702 Dim lngRow As Long, lngCol As Long Dim strCol As String ' See if in table If Selection.Information(wdWithInTable) Then ' Get column and row numbers lngCol = Selection.Information(wdStartOfRangeColumnNumber) lngRow = Selection.Information(wdStartOfRangeRowNumber) ' Convert column number to letter Select Case lngCol Case Is < 27 ' Single character column reference strCol = Chr$(clngAOffset + lngCol) Case Is > clngMaxCols MsgBox "Table is too big" Exit Sub Case Else ' Two-character column reference strCol = Chr$(clngAOffset + Fix((lngCol - 1) / 26)) strCol = strCol & Chr$(CLng(clngAOffset + 1 _ + ((lngCol - 1) Mod 26))) End Select ' Show column, row, and cell reference in status bar StatusBar = "Col:" & lngCol & "/Row:" & lngRow _ & " = Cellref: " & strCol & CStr(lngRow) End If End Sub
When you run the macro, it displays the requested information on the status bar in the following format:
Col:2/Row:1 = B1
You should note that the macro will handle tables that have more dimensions that Word will natively handle. This was not arbitrarily done; programmatically it is just as easy to return the 702nd column of a table (ZZ) as it is to return the 64th column (BL). (Word is limited to only 64 columns in a table.)
If you are still using Word 97, then you should know that there is a different approach you can take. Microsoft was kind enough to include a macro that you can use, if desired. This macro is called TableCellHelper, and it is in the Macros8.dot template provided on your original Word 97 (or Office 97) CD-ROM. It may even be installed on your system already; you can use the Find feature of Windows to locate the file and then use Word's Organizer to transfer TableCellHelper to your Normal.dot template.
When you run TableCellHelper, it installs itself on the standard toolbar. When you position the insertion pointer in a table cell and then run the macro, it displays a message box that shows the cell reference of the current cell, along with the overall size of the table.
WordTips is your source for cost-effective Microsoft Word training. (Microsoft Word is the most popular word processing software in the world.) This tip (1358) 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: Finding a Cell Reference.
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!