
π This article includes 1 downloadable practice file β
In this article
TOCOL flattens a 2-D range into a single column, optionally skipping blanks and errors. TOROW does the same into a row.
Syntax
=TOCOL(array, [ignore], [scan_by_column])
| Argument | What it means |
|---|---|
ignore |
1 = skip blanks, 2 = skip errors, 3 = both. |
Examples
Example 1
=UNIQUE(TOCOL(B2:F40, 1))
One unique list from a whole table of names.
TOCOL in practice
Where you will use it
- Flatten a grid into one column
- Unique list from a table: UNIQUE(TOCOL(t))
- Remove blanks
Worked example
| Case | Formula | Result |
|---|---|---|
| 1 | =ARRAYTOTEXT(TOCOL(CHOOSE(A2,{1,2;3,4},{"a","b";"c","d"},{1,2;3,4}),0,A2=3)) | 1, 2, 3, 4 |
| 2 | =ARRAYTOTEXT(TOCOL(CHOOSE(A3,{1,2;3,4},{"a","b";"c","d"},{1,2;3,4}),0,A3=3)) | a, b, c, d |
| 3 | =ARRAYTOTEXT(TOCOL(CHOOSE(A4,{1,2;3,4},{"a","b";"c","d"},{1,2;3,4}),0,A4=3)) | 1, 3, 2, 4 |
Results calculated in Excel.
Mistakes people make
| Mistake | What to do instead |
|---|---|
| Scan direction | Third argument TRUE scans by column |
| Errors and blanks | Second argument 1/2/3 ignores them |
Related functions
TOROW Β· WRAPROWS Β· UNIQUE
π Part of the free Excel course: Beginner β Expert Β· Try it in the Formula Lab or ask the AI Helper.
Test formulas dynamically in our web formula laboratory or download the companion Excel workbook.
π Practice files for this article
- πPractice workbook: Dynamic arrays18 tasks on realistic sales data β type your formula, the Check column turns green when it is right. Answers sheet included.β¬ XLSX Β· 35 KB
Free to use for learning. Files with macros (.bas) are plain text β import them with Alt+F11 β File β Import File, and always test on a copy.
Atul (AJ) builds office-automation and local-first AI tools as Atulya AI, and works with Excel, SAP and Oracle EPM every day. He writes about the shortcuts, macros and automations that actually save time β plus the occasional wacky fact. Videos on YouTube: Lazy Automator AI (@LazyAutomatorAI).
More posts by Atul βBuild this skill next
This page is a quick function reference. Use it for syntax, then practise the function in a broader workflow.
Stuck on a step? Ask a question and the AI answers using this article.