Pull specific rows or columns out of a range — in any order — with CHOOSEROWS and CHOOSECOLS. Reorder columns for a report or grab just rows 1, 3, and 5 in one formula.
The example
Reordering columns without cutting and pasting.
| A | B | C | |
|---|---|---|---|
| 1 | Region | Name | Sales |
| 2 | East | Ann | 95 |
The formula
Select and order columns (or rows):
How it works
List the indexes you want, in order:
CHOOSECOLS(array, n1, n2, …)returns those columns, in the order listed — great for reordering a report.CHOOSEROWSdoes the same for rows:CHOOSEROWS(array, 1, 3, 5).- Use negative indexes to count from the end:
-1is the last column. - Repeat an index to duplicate that row/column. The result spills as a new array.
Reorder lookups cleanly: XLOOKUP can return whole rows; wrap with CHOOSECOLS to present the fields in your preferred order without rearranging the source data. Combine with TAKE/DROP for precise slices.
Try it: interactive demo
Columns Region,Name,Sales → reorder.
Variations
Pick rows
Rows 1, 3, 5:
Last column
Negative index:
Reorder a lookup
Fields in your order:
Pitfalls & errors
365 only. Both are recent dynamic-array functions.
Index out of range. Asking for column 6 of a 5-column array returns #VALUE!.
1-based. The first column is 1, not 0.
Practice workbook
Frequently asked questions
How do I reorder columns with a formula in Excel?
How do I pick specific rows from a range?
How do I get the last column?
Stop fighting formulas. Learn them in a day.
This recipe is one of hundreds of real-world formulas we teach. Our Excel Formulas & Functions class covers lookups, logic, text, and dynamic arrays hands-on — live in Dallas–Fort Worth, Houston, Austin, Oklahoma City, Denver, or online.
See the Formulas & Functions Class