To reverse a vertical list while keeping its original sequence intact, add a helper column numbered from 1 down, select both columns, and sort the helper column from largest to smallest. This guide covers that quick approach, formulas for automatic results, Power Query, and a VBA macro, so you can choose based on your Excel version, list size, and whether you need to preserve formulas or just values.
1. Sort by a Manually Numbered Helper Column
Put 1 beside the first number, 2 beside the second, and continue down the helper column until every row has an index. Select both the number list and its helper column, then choose Data > Sort, set Sort by to the helper column, and set Order to Largest to Smallest; sorting both columns together keeps each number paired with its index. This reverses the original row order even if the numbers themselves are unsorted or repeated, unlike sorting the numbers directly. It is a clear, dependable choice for a one-time reversal, but remember to expand the selection to include the whole data range if other columns contain information that belongs to each number.
2. Create the Helper Index with a Formula
With numbers in A2:A6 and a helper column beginning at B2, enter =ROWS($A$2:A2) in B2 and fill it down to B6. The results are 1, 2, 3, 4, and 5; sort the complete range A2:B6 by column B from largest to smallest to put the original fifth row first. Because the index is generated from the row’s position in the list, this avoids typing the sequence manually and continues to work if you extend the formula into additional rows. It is still a sort operation, so sort every related column with the helper rather than sorting the number column by itself.
3. Fill a Reversed List with INDEX
With the original values in A2:A6 and the output starting in C2, enter =INDEX($A$2:$A$6,ROWS($A$2:$A$6)-ROWS($C$2:C2)+1) in C2, then fill it down through C6. The first result is the value from A6, the next is from A5, and the last is from A2, so the output reverses the list without changing the source. This approach works well when you need a separate result column and want to inspect or copy the formula row by row. The fixed source range is intentional: if your list grows beyond A2:A6, update that range and fill the formula into the new output rows.
4. Spill a Reversed List with SORTBY
With the source list in A2:A6 and an empty output area beginning at C2, enter =SORTBY(A2:A6,SEQUENCE(ROWS(A2:A6)),-1) in C2. SEQUENCE generates sort keys 1 through 5, and SORTBY orders the source by those keys in descending order, returning the fifth source value first and spilling the results down automatically. This is a tidy option in Microsoft 365 or Excel 2021 and later because the output adjusts when the source range changes size, provided the formula’s source range is updated too. Leave the cells below C2 clear; a value or merged cell in the spill area can cause Excel to show a #SPILL! error.
5. Reverse Rows with CHOOSEROWS
With values in A2:A6 and room for a spill result at C2, enter =CHOOSEROWS(A2:A6,SEQUENCE(ROWS(A2:A6),1,ROWS(A2:A6),-1)). SEQUENCE supplies row numbers 5, 4, 3, 2, and 1, and CHOOSEROWS returns those rows in that order, making the intention especially direct: choose the source rows from bottom to top. CHOOSEROWS is available in Microsoft 365 and Excel 2024, so check your version before relying on it in a workbook shared with people using older Excel. Like other spill formulas, it needs an unobstructed result area and returns a live result rather than overwriting the original list.
6. Use INDEX with a Spilled SEQUENCE
With the source list in A2:A6 and the output area starting at C2, enter =INDEX(A2:A6,SEQUENCE(ROWS(A2:A6),1,ROWS(A2:A6),-1)). The SEQUENCE argument creates the row numbers 5 down to 1, and INDEX returns the corresponding source entries as a spilled array. This gives a dynamic alternative to filling an INDEX formula down one row at a time, while making the reverse order explicit in the formula. It requires a version with dynamic arrays, such as Microsoft 365 or Excel 2021; if the formula is not recognized in an older release, use the fill-down INDEX method instead.
7. Fill Down an OFFSET Formula
With source numbers in A2:A6 and the first output cell at C2, enter =OFFSET($A$2,ROWS($A$2:$A$6)-ROWS($C$2:C2),0) in C2 and fill down through C6. The first formula offsets four rows from A2 to return A6, while the last offsets zero rows and returns A2, so the copied results run in reverse. OFFSET is useful in older Excel versions that do not support modern spill functions, but it is volatile: Excel recalculates it whenever the workbook recalculates, which can slow large workbooks. Keep the source and output ranges aligned, and adjust the A2:A6 references if the list’s size changes.
8. Sort the Numbers from Largest to Smallest
If the list is already in ascending numerical order, select the numbers and choose Data > Sort Largest to Smallest to reverse their order. For example, 2, 4, 7, 11 becomes 11, 7, 4, 2; this is a quick solution when descending numerical order is exactly what you want. It does not reverse an arbitrary sequence: a list such as 8, 3, 10, 5 will be arranged by value as 10, 8, 5, 3, rather than in its original order from bottom to top. If the numbers are tied to other row data, include those columns in the sort selection so records remain together.
9. Reverse the List in Power Query
Select the data and choose Data > From Table/Range; if Excel asks, confirm that the table has headers only when the selected range really includes a header row. In the Power Query Editor, choose Add Column > Index Column > From 0, sort the new index column in descending order, remove the index column, and select Home > Close & Load. The query produces a reversed result without changing the source cells, and you can refresh it after updating the source data. Power Query is particularly useful for repeated imports or larger lists, but the loaded result is a query output rather than a live cell-by-cell formula, so refresh the query to bring in later changes.
10. Reverse a Selected Range with VBA
For a one-column list that you need to reverse in place, select the cells and run a small macro like this from the VBA editor. It swaps the selected cells’ values from the top and bottom inward, so it handles odd-length lists as well as even-length ones.
Sub ReverseSelectedNumbers()
Dim target As Range
Dim topIndex As Long
Dim bottomIndex As Long
Dim tempValue As Variant
' Work only with a single selected column.
If TypeName(Selection) <> "Range" Then Exit Sub
Set target = Selection
If target.Columns.Count <> 1 Then
MsgBox "Select a single column."
Exit Sub
End If
For topIndex = 1 To target.Rows.Count \ 2
bottomIndex = target.Rows.Count - topIndex + 1
tempValue = target.Cells(topIndex, 1).Value2
target.Cells(topIndex, 1).Value2 = target.Cells(bottomIndex, 1).Value2
target.Cells(bottomIndex, 1).Value2 = tempValue
Next topIndex
End Sub
On Windows, open the editor with Developer > Visual Basic, insert a module, paste the code, and run the macro with the target range selected. This code swaps cell values, not formulas or formatting, so formula cells become their current values; save a copy of the workbook first because macro actions cannot be undone with Ctrl+Z (Command+Z on Mac). Use this method only when you specifically want to alter the selected cells rather than create a separate reversed copy.
How to Choose
First decide whether you mean reverse the original row order or sort the numbers by numerical value; those operations are different unless the source is already sorted. For a one-time reversal with no formulas, use a helper index and sort the full data range. For a separate result that updates from its source, use SORTBY, CHOOSEROWS, or INDEX with SEQUENCE if your Excel version supports the needed functions. Choose the fill-down INDEX formula when you want a conventional copied formula, or Power Query when the list is part of a repeatable import-and-refresh process. Use VBA only when changing the selected cells in place is genuinely useful, and make a backup before running it. Also consider whether blank cells, headers, or neighboring columns must move with the numbers; selecting the correct full range is essential for keeping records intact.
Frequently Asked Questions
Does reversing a list mean sorting it from largest to smallest?
Not always. Reversing means putting the last original entry first, while a descending sort rearranges entries according to numerical value; the results match only when the original list is in ascending order without complications such as tied values.
Can I reverse a horizontal list?
Yes. For a horizontal range, use a formula that creates column positions in descending order, or use a helper row and sort the columns by that row. Check that the selected sort range includes every related row so values stay aligned.
Why does my formula show #SPILL!?
A dynamic-array formula needs empty cells for its results. Clear any contents in the intended spill area, unmerge cells there, and make sure the formula is not inside an Excel Table, where spilled-array formulas are not supported in the same way.
Will the reversed result update when I change a source number?
Formula-based results update when their referenced source values change. A manually sorted copy does not automatically track edits, and a Power Query result normally needs a refresh after the source changes.
What if Excel treats some numbers as text?
Reversal by row position can still move text-formatted entries, but numerical sorting may place them unexpectedly because text and numbers are different data types. Convert the entries to numbers before sorting by value if numerical order is the goal.
Final Thoughts
For most users, a helper column is the safest one-time fix, while a spill formula is convenient for a result that should update automatically. Match the method to the meaning of “flip,” confirm that related data moves with the list, and keep a copy before changing source cells with a macro.
Related
- Insert a Cover Page in Word: Steps and Tips
- Insert a Checked Checkbox in Word: 3 Simple Methods
- Insert a Circle Checkbox in Word: Symbols and Options
Try it: the Date Difference Calculator: days, months, years and weekdays between two dates, with the DATEDIF formulas.
More in How-to basics
- Add a Dropdown List to an Excel Column: Steps and TipsTo add a dropdown list to an Excel column in Microsoft 365 for Windows, select the cells that…
- Outlook Signature: Create a Professional Email Sign-OffTo create a professional signature in Outlook, open the signature settings for your version of Outlook, create a…
- Make One Page Landscape in Word (Keep Others Portrait)To make just one page landscape in Microsoft Word for Microsoft 365 on Windows, place it in its…
- Google Sheets Data Validation: Edit Rules and ListsYes. To edit data validation in Google Sheets, select a cell or range with a rule, choose Data…
- How to Add Page Numbers in MLA Format in WordTo add MLA-style page numbers in Word, insert an automatic page number in the top-right header, then place…
- How to Add a Watermark in Word on Windows 11To add a watermark in Word on Windows 11, open the document in the Word desktop app and…
Sources: Function behaviour and menu paths: Microsoft Support documentation for Excel. Method & sources
Spotted an error in this guide? Let us know.