# TOROW function in Excel

> TOROW turns a range or array into a single row, reading across each row unless you ask for column by column.

Source: https://spreadsheetpractice.com/functions/torow · Updated October 28, 2026 · Formulas and results on this page were run by the Spreadsheet Practice formula engine on October 30, 2026

## Quick answer

- **What it does:** TOROW turns a range or array into a single row, reading across each row unless you ask for column by column.
- **Syntax:** `=TOROW(array, [ignore], [scan_by_column])`
- **Most common use:** `=TOROW(A2:A4)` returns Ana (The names across a row)
- **Available in:** Excel 2024 and Microsoft 365
- **Category:** [Dynamic array functions](https://spreadsheetpractice.com/functions/category/dynamic-arrays)
- **Returns:** A one-row array that spills to the right.
- **Google Sheets:** Available in Google Sheets.

## What it does

TOROW turns a range or array into a single row, reading across each row unless you ask for column by column. Like TOCOL, it can skip blanks and errors. Use it to lay a list out across a header row, or to feed a whole grid into a function that wants one row of values.

## Syntax

`=TOROW(array, [ignore], [scan_by_column])`

| Argument | Required? | What it is |
|---|---|---|
| `array` | Required | The range or array to flatten. |
| `ignore` | Optional | Optional: 0 keeps everything (default), 1 skips blanks, 2 skips errors, 3 skips both. |
| `scan_by_column` | Optional | Optional: TRUE reads down each column first; FALSE (default) reads across each row. |

## Examples

Each result was calculated by running the formula on the sample sheet.

| Cell | Formula | Result | What it shows |
|---|---|---|---|
| D2 | `=TOROW(A2:A4)` | Ana (spills 1 × 3) | The names across a row |
| D3 | `=TOROW(B2:B4,1)` | 88 (spills 1 × 2) | The scores, with the blank skipped |
| D4 | `=COLUMNS(TOROW(A2:B4,1))` | 5 | 5 values once the blank is left out |

### The sample sheet

Every formula above runs on this data:

|  | A | B | C | D | E | F |
|---|---|---|---|---|---|---|
| 1 | Name | Score |  |  |  |  |
| 2 | Ana | 88 |  | Ana | Raj | Lee |
| 3 | Raj | 92 |  | 88 | 92 |  |
| 4 | Lee |  |  | 5 |  |  |

## Common mistakes

| What you see | Why, and how to fix it |
|---|---|
| #SPILL! | The cells to the right aren't empty. |
| Zeros where blanks were | Blank cells come through as 0. Set ignore to 1 to skip them. |

## Tips

- =TEXTJOIN(", ",TRUE,TOROW(A2:C5)) joins a whole grid into one line of text.

## Related functions

- [TOCOL](https://spreadsheetpractice.com/functions/tocol): TOCOL turns a range or array into a single column, reading across each row unless you ask for column by column.
- [TRANSPOSE](https://spreadsheetpractice.com/functions/transpose): TRANSPOSE flips a range so rows become columns and columns become rows.
- [TEXTJOIN](https://spreadsheetpractice.com/functions/textjoin): TEXTJOIN joins a list of values with the same delimiter between each one, and can skip blanks.

## Questions

### How do I turn a column into a row in Excel?

=TOROW(A2:A10), or TRANSPOSE. TOROW also works on grids and can skip blanks.

### What is the difference between TOROW and TOCOL?

Only the direction: TOROW returns one row, TOCOL one column.

## Practice

A graded TOROW exercise ("Names across a row") is on [the TOROW page](https://spreadsheetpractice.com/functions/torow). It is checked instantly, then re-checked on changed data.

---

Spreadsheet Practice (https://spreadsheetpractice.com) teaches spreadsheet formulas by practice: every exercise is graded in a live grid and re-checked on changed data.
