Please Note: This article is written for users of the following Microsoft Word versions: 2007, 2010, 2013, 2016, 2019, Word in Microsoft 365, and 2021. 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: Reverse Numbered Lists.

Reverse Numbered Lists

Written by Allen Wyatt (last updated March 18, 2023)
This tip applies to Word 2007, 2010, 2013, 2016, 2019, Word in Microsoft 365, and 2021


1

Word includes a built-in numbered-list feature that you can use to quickly develop your lists. This is great for lists that are in ascending order (1 through 10), but not so great for those you want in descending order (10 through 1).

If you have a need for reverse lists, there is no automatic feature in Word that allows you to create them. One way around this is to simply create your own list numbers and put them in the order desired. The problem with this is that the process is manually intensive. In addition, the regular numbered-list feature of Word can play havoc with your reverse-ordered list if you press Enter at the end of an existing list item.

Another way to handle the situation is to precede each item in your list with a SEQ field to generate the number for the list item. When you are done with the list items, you could then update the fields and sort the paragraphs in descending order. The obvious drawback to this approach is that you need to enter your initial list in reverse order, since the final sort will do the ordering for you. Thus, if you had 10 items, you would enter number 10 first, then number 9, and so on. When you did the sort, the order of the items would be reversed and each item would end up in its final order.

Another drawback to this is that adding items to the list becomes cumbersome, and if you update the fields in your document, the numbers will be thrown off completely. Thus, a more satisfactory approach must be found.

One way is to modify the SEQ field so that it more appropriately shows the intended order of the paragraphs. Using a compound field for the list number can do this, in the following fashion:

{=NP - {SEQ RevList}}

In this instance, the characters NP must be replaced with a number that is one greater than the number of items in your final list. Thus, if your list consisted of 25 items, then NP would be 26. The SEQ field is used to generate an ascending order of numbers subtracted from NP to give a final reverse-order numbering.

As long as you know the number of paragraphs (items) in your list and you remember to put the field at the beginning of each paragraph, you are in great condition. If you forget either one, your list can be thrown off. To solve this, a macro can come in handy. The following macros (RevList and DoList) will do the trick.

Sub RevList()
    Dim ShowFlag As Boolean
    Dim Numparas As Integer
    Dim Counter As Integer

    Numparas = Selection.Paragraphs.Count
    Selection.MoveLeft Unit:=wdCharacter, Count:=1
    ShowFlag = ActiveWindow.View.ShowFieldCodes
    ActiveWindow.View.ShowFieldCodes = True
    DoList Numparas
    Counter = 1
    While Counter < Numparas
        Selection.Move Unit:=wdParagraph, Count:=1
        DoList Numparas
        Counter = Counter + 1
    Wend
    ActiveWindow.View.ShowFieldCodes = ShowFlag
    ActiveDocument.Select
    ActiveDocument.Fields.Update
End Sub
Private Sub DoList(Cnt As Integer)
    Selection.Extend
    Selection.MoveRight Unit:=wdCharacter, Count:=1
    If InStr(Selection.Text, "SEQ") > 0 Then
        Selection.MoveRight Unit:=wdCharacter, Count:=2
        Selection.Delete Unit:=wdCharacter, Count:=1
    Else
        Selection.Collapse Direction:=wdCollapseStart
    End If
    Selection.Fields.Add Range:=Selection.Range, Type:=wdFieldEmpty, _
        PreserveFormatting:=False
    Selection.TypeText Text:="=" & Cnt + 1 & "-"
    Selection.Fields.Add Range:=Selection.Range, Type:=wdFieldEmpty, _
        PreserveFormatting:=False
    Selection.TypeText Text:="SEQ RevList"
    With Selection.ParagraphFormat
        .LeftIndent = InchesToPoints(0.5)
        .FirstLineIndent = InchesToPoints(-0.5)
    End With
    Selection.MoveRight Unit:=wdCharacter, Count:=4
    Selection.InsertAfter "." & vbTab
End Sub

To use the macros, simply select the paragraphs to be included in the list, then run RevList, which in turn uses DoList. The proper fields are placed at the beginning of each paragraph (removing any that are there already), and applying a hanging indent to the paragraphs.

If you want to modify the way in which the hanging indent is created, simply change the lines in the DoList macro where the LeftIndent and FirstLineIndent properties are set.

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 (9864) applies to Microsoft Word 2007, 2010, 2013, 2016, 2019, Word in Microsoft 365, and 2021. You can find a version of this tip for the older menu interface of Word here: Reverse Numbered Lists.

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

Excellent XML Resource Available

Where to get more information on XML.

Discover More

Subtotals Option Grayed Out

The Subtotals option on the Data menu is normally available for adding or removing subtotals to data tables. If the ...

Discover More

Minimizing and Correcting Propagation of Similar Styles

When there are multiple users working with a document, it can collect a number of unwanted styles over time. Here are ...

Discover More

Comprehensive VBA Guide Visual Basic for Applications (VBA) is the language used for writing macros in all Office programs. This complete guide shows both professionals and novices how to master VBA in order to customize the entire Office suite for their needs. Check out Mastering VBA for Office 2010 today!

More WordTips (ribbon)

Continuing Your Numbering

If you have a couple of numbered lists separated by regular text paragraphs, you might want the secondary lists to be ...

Discover More

Changing the Types of Numbers in a Numbered List

Ever want to change the types of numbers that Word displays when you create a numbered list? There are several numbering ...

Discover More

Lining Up Numbered List Numbers

Do you want the numbers in your numbered lists to be aligned differently than they normally are? You can adjust the ...

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}] (all 7 characters, in the sequence shown) 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 five more than 8?

2023-03-18 06:46:49

Ray McAllister

I believe I shared this will Allen a year ago, but don’t think it made it into his Word tips newsletter.

Reverse numbered list

I’ve been looking for a way to create a reverse-numbered list in Word, that has the highest numbered item or statement at the top, and number 1 at the bottom. Adding or removing list items anywhere in the list should renumber the list in the same reverse order.

I’ve finally come up with the following approach that is a bit clunky. Perhaps your readers can think of —
* ways to make it more elegant and automatic (styles?);
* Alternate approaches;
* Useful reasons to actually do it. (David Letterman’s top ten lists?)

Here goes:
1. Insert a table with a single row and two columns.
3. In the first column, click on Table Layout, then Formula, in the Data box.
4. Enter “=count(below)+1” and press enter (no quote marks). This formula counts all rows in the table below the formula, regardless of cell contents.
6. Add desired punctuation after the number.
7. Format column 1 as desired (justified left/center/right, margins, width, etc.).
8. Select that table row and press control C to copy.
10. Press control V repeatedly to add as many rows as wanted.
12. Add or insert more copied rows or delete rows as needed.
13. in column 2 enter text for each item, statement, or instruction in the list.
14. Press Ctrl A (to select all text), then F9 to update the formula fields.
15. Each formula counts the table rows below it, regardless of their content.

What happens if:
- One or more rows do not have the formula? The formula counts the table rows below, even if empty.
- The formulas are scattered across columns? Doesn’t matter. Each formula independently counts the rows below regardless of their content, and regardless of location of any other formulas.
- The completed table is converted to text? Error: “The Formula Not In Table”
- The formula is put in a paragraph style?
- Cells are merged across rows. Can Word do this, or only Excel?


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.

Videos
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.