How to split text into rows
✓ Verified in LibreOffice 25.8.7.3Break one delimited cell into a vertical list — turn "a,b,c" into three stacked rows for filtering, lookups, or a tidy column.
The formula
| App | Formula | Notes |
|---|---|---|
| Excel | =TEXTSPLIT(A2,,",") | The empty 2nd argument means no column split; the 3rd argument is the ROW delimiter, so the pieces spill DOWN. Excel 365 / LibreOffice 24.8+. |
| Google Sheets | =TRANSPOSE(SPLIT(A2,",")) | SPLIT spills across columns; TRANSPOSE flips it to rows. Sheets has no TEXTSPLIT. |
| LibreOffice Calc | =TEXTSPLIT(A2,,",") | Needs 24.8+. |
How it works
TEXTSPLIT takes three key arguments: the text, a column delimiter, and a row delimiter. Splitting into COLUMNS uses the 2nd argument; splitting into ROWS uses the 3rd. Leaving the column delimiter empty and passing your delimiter as the row delimiter — =TEXTSPLIT(A2,,",") — spills the pieces vertically, so "a,b,c" becomes a,b,c stacked down three cells. In Google Sheets, which lacks TEXTSPLIT, the idiom is TRANSPOSE(SPLIT(A2,",")) since SPLIT only spills horizontally. To flatten a whole delimited grid into one column, wrap it: TOCOL(TEXTSPLIT(A2,",")). Handy extras: TEXTSPLIT's later arguments let you ignore empty results and pad missing values, and you can pass an array of delimiters like {",",";"} to split on several characters at once. All of this needs dynamic arrays — Excel 365, Google Sheets, or LibreOffice 24.8+.
Verified, not just documented
We ran =TEXTSPLIT("a,b,c",,",") in LibreOffice 25.8.7.3 (headless, with forced recalculation) and it returned a, b, c — exactly the expected result. Every formula here is confirmed by actually executing it.
Functions used
TEXTSPLIT · TRANSPOSE · SPLIT — see full Excel, Google Sheets & LibreOffice compatibility for each.