How to Split Text by Comma in Excel Using the TEXTSPLIT Formula

📅 Feb 21, 2026 📝 Sarah Miller

Managing cluttered, comma-separated data in Excel often stalls critical reporting and analysis. While standard funding sources and IT budgets allocate resources for enterprise database management tools, everyday analysts still struggle with manual data-parsing bottlenecks.

Fortunately, mastering the TEXTSPLIT formula grants users immediate control over their data layout, automating tedious manual tasks. The primary stipulation is that this advanced function requires a Microsoft 365 subscription to support dynamic arrays. Non-profit organizations regularly rely on this specific formula to clean donor lists efficiently. Below, we will detail the exact formula syntax and walk through practical applications to streamline your workflow.

How to Split Text by Comma in Excel Using the TEXTSPLIT Formula

Managing data in Excel often involves cleaning up imported information. One of the most frequent challenges is dealing with comma-separated values inside a single cell-such as lists of names, addresses, or product tags-and splitting them into individual cells. While Excel has a built-in "Text to Columns" wizard, using Excel formulas is much more powerful because formulas are dynamic. If your source data changes, formula results update instantly without manual intervention.

Depending on your Excel version, there are several ways to accomplish this. This comprehensive guide covers everything from the modern TEXTSPLIT function available in Microsoft 365 to legacy workarounds for older versions of Excel.


Method 1: The Modern Way – Using TEXTSPLIT (Excel 365 & 2021)

If you are using Microsoft 365 or Excel for the Web, splitting text with a comma is incredibly simple thanks to the TEXTSPLIT function. It is a dynamic array function, meaning you write it in one cell, and the results automatically spill over into adjacent cells.

The Basic Formula

To split text in cell A2 by a comma, use the following formula:

=TEXTSPLIT(A2, ",")

Handling Spaces After Commas

Often, comma-separated lists contain a space after each comma (e.g., "Apple, Banana, Cherry"). If you split only by a comma (","), your resulting cells will contain unwanted leading spaces. To fix this, you can specify both the comma and the space as the delimiter:

=TEXTSPLIT(A2, ", ")

Alternatively, you can wrap the formula in the TRIM function to clean up any accidental spaces:

=TRIM(TEXTSPLIT(A2, ","))

Splitting into Rows Instead of Columns

If you want your comma-separated text to split vertically down rows instead of horizontally across columns, you can bypass the column delimiter argument and use the third argument (row delimiter) instead:

=TEXTSPLIT(A2, , ", ")

Method 2: Extracting a Specific Segment (e.g., Just the 2nd Item)

Sometimes you don't want to split the entire text across multiple cells; instead, you only want to extract a specific item from the comma-separated list (for example, just the second item).

Using INDEX with TEXTSPLIT (Excel 365)

You can combine TEXTSPLIT with the INDEX function to grab any specific part of your split text. To extract the 2nd item from the list in cell A2:

=INDEX(TEXTSPLIT(A2, ", "), 2)

By changing the last number in the formula, you can extract the 1st, 3rd, or N-th item seamlessly.

Using CHOOSECOLS

Another clean Modern Excel alternative is using the CHOOSECOLS function, which is designed specifically to extract columns from an array:

=CHOOSECOLS(TEXTSPLIT(A2, ", "), 2)

Method 3: Legacy Formulas (Excel 2019, 2016, and Older)

If you are using an older version of Excel that does not support TEXTSPLIT, you have to rely on traditional text functions like LEFT, RIGHT, MID, FIND, LEN, and SUBSTITUTE. These formulas are more complex but highly reliable.

1. Extracting the First Item (Before the First Comma)

To find the first comma and extract everything to the left of it, use this formula:

=LEFT(A2, FIND(",", A2) - 1)

How it works: The FIND function locates the character position of the first comma. We subtract 1 from this position to target the character right before the comma, and the LEFT function returns everything up to that point.

2. Extracting the Last Item (After the Last Comma)

Extracting the last item in older Excel versions is trickier because we need to locate the *last* comma rather than the first. We can do this using a clever combination of RIGHT, LEN, SUBSTITUTE, and REPT:

=TRIM(RIGHT(SUBSTITUTE(A2, ",", REPT(" ", LEN(A2))), LEN(A2)))

How it works:

  • REPT(" ", LEN(A2)) creates a string of spaces equal to the length of your original text.
  • SUBSTITUTE replaces every comma in your text with this massive block of spaces.
  • RIGHT grabs a chunk of text from the right end that is the same length as the original text. Because of the massive spacing, this chunk is guaranteed to only contain the last word and a lot of empty space.
  • TRIM strips away all the excess leading and trailing spaces, leaving only your clean final item.

3. Extracting the N-th Item (The "Magic" Legacy Formula)

If you need to extract a specific middle item (e.g., the 2nd or 3rd item) in older Excel versions, you can expand on the "space padding" trick. Use the following formula to extract the 2nd item:

=TRIM(MID(SUBSTITUTE(A2, ",", REPT(" ", LEN(A2))), (2 - 1) * LEN(A2) + 1, LEN(A2)))

To extract the 3rd item, change the (2 - 1) part of the formula to (3 - 1):

=TRIM(MID(SUBSTITUTE(A2, ",", REPT(" ", LEN(A2))), (3 - 1) * LEN(A2) + 1, LEN(A2)))

Visualizing the Results

To see how these formulas behave on actual data, refer to the table below:

Original Text (Cell A2) Formula Used Output / Result
Red, Green, Blue =TEXTSPLIT(A2, ", ") Splits into 3 adjacent columns: "Red" | "Green" | "Blue"
Red, Green, Blue =LEFT(A2, FIND(",", A2)-1) "Red"
Red, Green, Blue =INDEX(TEXTSPLIT(A2, ", "), 2) "Green"
Red, Green, Blue =TRIM(RIGHT(SUBSTITUTE(A2,",",REPT(" ",LEN(A2))),LEN(A2))) "Blue"

Handling Potential Errors & Edge Cases

When working with real-world datasets, your data is rarely perfect. Here is how to handle common errors when splitting text.

Preventing #VALUE! Errors (Missing Commas)

In legacy formulas, if a cell doesn't actually contain a comma, the FIND function will fail and return a #VALUE! error. To prevent this, wrap your legacy formulas in an IFERROR function:

=IFERROR(LEFT(A2, FIND(",", A2) - 1), A2)

This formula attempts to extract the text before the first comma; if no comma exists, it safely returns the original text in cell A2.

Handling Empty Elements in Microsoft 365

If your list has consecutive commas (e.g., "Apple,,Cherry"), TEXTSPLIT by default will return an empty cell for the missing item. If you want to skip empty values completely, you can configure the fourth argument of TEXTSPLIT (called ignore_empty) by setting it to TRUE:

=TEXTSPLIT(A2, ",", , TRUE)

Summary: Which Method Should You Use?

  • Use Method 1 (TEXTSPLIT) if you are using Microsoft 365. It is the most robust, easiest to read, and dynamically expands across rows or columns.
  • Use Method 2 (INDEX + TEXTSPLIT) if you are on Microsoft 365 and only need to extract one specific element from your list.
  • Use Method 3 (LEFT/MID/RIGHT workarounds) if you are sharing your workbook with colleagues who are using older standalone versions of Excel like Excel 2016 or 2019.

Disclaimer:
The documents and templates provided on this page are for informational and illustrative purposes only. They do not constitute professional, legal, or financial advice, and should not be relied upon as such. Because individual circumstances and regulatory requirements vary, these materials may not be suitable for your specific needs. We recommend consulting with a qualified professional before adapting or using any of these examples for official or commercial purposes.