# How to return a value by its position number with CHOOSE in Excel

CHOOSE returns the item at the position you give it: `=CHOOSE(B2,"Very poor","Poor","Neutral","Good","Excellent")`.

**Excel:** `=CHOOSE(B2,"Very poor","Poor","Neutral","Good","Excellent")` (Every current version)

**Google Sheets:** the same formula works.

## Example

Sample data (row 1 is the header):

| A | B | C |
| --- | --- | --- |
| Respondent | Rating | Label |
| R-01 | 4 |  |
| R-02 | 2 |  |
| R-03 | 5 |  |
| R-04 | 3 |  |
| R-05 | 1 |  |
| R-06 | 4 |  |

Formula in C2, filled to C7: `=CHOOSE(B2,"Very poor","Poor","Neutral","Good","Excellent")`

Result: Good; Poor; Excellent; Neutral; Very poor; Good

## How it works

The first argument of CHOOSE is a position and the rest are the options. A rating of 4 returns the 4th option, "Good". It is a lookup for short, fixed lists numbered from 1, with the list written inside the formula.

## Other ways

- `=INDEX({"Very poor","Poor","Neutral","Good","Excellent"},B2)`: INDEX on a list in braces does the same, and the list is easy to move into cells later.
- `=SWITCH(B2,1,"Very poor",2,"Poor",3,"Neutral",4,"Good",5,"Excellent")`: SWITCH pairs each value with its result, so the values don't have to be 1, 2, 3. Excel 2019 and later.

## Common mistakes

- A position of 0, a blank or a number above the number of options returns #VALUE!.
- Decimals are truncated: 4.7 returns the 4th option.
- For long or changing lists, keep the labels in cells and use XLOOKUP; editing a formula for every change is error-prone.

## Questions

**Can CHOOSE return a range?**

Yes. `=SUM(CHOOSE(F1,B2:B10,C2:C10,D2:D10))` totals the column picked by F1.

**How do I turn a month number into a quarter?**

List the quarter for each month: `=CHOOSE(MONTH(A2),1,1,1,2,2,2,3,3,3,4,4,4)`.

Every formula and result on this page was checked by running it in the Spreadsheet Practice formula engine on 2026-10-30.

Source: https://spreadsheetpractice.com/formulas/choose-value-by-position-number
