How to Split Text by Multiple Delimiters with Excel TEXTSPLIT

📅 Jan 24, 2026 📝 Sarah Miller

Managing inconsistent data containing mixed separators like commas, semicolons, and spaces often stalls critical data cleansing workflows. Traditionally, analysts relied on rigid Text-to-Columns wizards or complex, nested SUBSTITUTE formulas to parse these strings. Fortunately, the modern TEXTSPLIT function grants instantaneous, dynamic parsing across multiple delimiters simultaneously, though utilizing this tool stipulates a Microsoft 365 subscription. For instance, splitting a mixed string like "ID-450;Active,Sales" into clean, distinct cells simply requires passing the array constant {"-",";",","} as the delimiter argument. Below, we outline the exact formula syntax and step-by-step deployment to streamline your data.

How to Split Text by Multiple Delimiters with Excel TEXTSPLIT

Excel Formula to Split Text by Multiple Delimiters using TEXTSPLIT

For years, Excel users struggled with splitting text containing multiple different delimiters. If your dataset had strings separated by a mix of commas, semicolons, slashes, and spaces, you were forced to build nightmare formulas combining MID, LEFT, FIND, LEN, and SUBSTITUTE. Alternatively, you had to run the "Text to Columns" wizard multiple times or write complex VBA macros.

With the release of Excel 365 and Excel for the Web, Microsoft introduced a game-changing dynamic array function: TEXTSPLIT. This function simplifies text parsing by allowing you to split text using one or more delimiters instantly. In this comprehensive guide, we will explore how to use the TEXTSPLIT formula to handle multiple delimiters, parse complex strings, manage empty cells, and clean up your data with ease.

Understanding the TEXTSPLIT Function Syntax

Before we dive into multiple delimiters, let's look at the basic syntax of the TEXTSPLIT function:

=TEXTSPLIT(text, col_delimiter, [row_delimiter], [ignore_empty], [match_mode], [pad_with])

Here is a breakdown of the arguments:

  • text (Required): The text string or cell reference you want to split.
  • col_delimiter (Optional): The character(s) that mark where to split the text into columns.
  • row_delimiter (Optional): The character(s) that mark where to split the text into rows.
  • ignore_empty (Optional): A boolean value (TRUE or FALSE). Set to TRUE to ignore consecutive delimiters and avoid creating empty cells. Defaults to FALSE.
  • match_mode (Optional): Determines case sensitivity. 0 for case-sensitive (default), 1 for case-insensitive.
  • pad_with (Optional): The value to use to fill missing values in a two-dimensional array.

How to Split Text by Multiple Delimiters

To split text using multiple delimiters, you must pass the delimiters as an array constant inside curly braces {}, separated by commas. For example, if you want to split text by a comma (,), a semicolon (;), and a vertical bar (|), your array constant will look like this: {",", ";", "|"}.

Basic Example: Splitting Contact Info

Imagine you have a list of contact details in cell A2 formatted like this:

John Doe;Admin,HR|Manager

To split this string into separate columns using the semicolon, comma, and vertical bar as delimiters, you would write the following formula:

=TEXTSPLIT(A2, {";", ",", "|"})

Result:

Original Text (A2) Result (B2) Result (C2) Result (D2) Result (E2)
John Doe;Admin,HR|Manager John Doe Admin HR Manager

Handling Whitespace and Formatting with TRIM

One common issue when splitting text is dealing with inconsistent spaces around delimiters. For instance, if your text is "Apples , Oranges ; Bananas", splitting by {",", ";"} will leave you with leading or trailing spaces in your results (e.g., " Oranges ").

To clean up these unwanted spaces automatically, wrap your TEXTSPLIT formula inside the TRIM function:

=TRIM(TEXTSPLIT(A2, {",", ";", "|"}))

The TRIM function will be applied to every element of the resulting array, ensuring your split data is clean and ready for analysis.

Splitting by Rows Instead of Columns

By default, TEXTSPLIT distributes the split values horizontally across columns. If you want to list the split items vertically down a column (in rows), you simply need to skip the second argument (col_delimiter) and put your array of delimiters in the third argument (row_delimiter):

=TEXTSPLIT(A2, , {",", ";", "|"})

Notice the double comma (,,) in the formula. This tells Excel that the column delimiter is omitted, and the array constant is being passed as the row delimiter instead.

Managing Consecutive Delimiters (The `ignore_empty` Argument)

When raw data is poorly formatted, you might encounter consecutive delimiters. For example, look at this text: "Red,,Blue,,,Green".

If you split this string using a comma without specifying the ignore_empty argument, Excel will return empty cells for the missing values between the consecutive commas:

=TEXTSPLIT("Red,,Blue,,,Green", ",") → Returns: "Red", "", "Blue", "", "", "Green"

To prevent these empty columns/rows from cluttering your worksheet, set the fourth argument (ignore_empty) to TRUE (or 1):

=TEXTSPLIT("Red,,Blue,,,Green", ",", , TRUE)

Result: "Red", "Blue", "Green"

Advanced Scenario: Splitting by Both Columns and Rows

One of the most powerful features of TEXTSPLIT is its ability to split a single text block into a two-dimensional table using column and row delimiters simultaneously.

Consider a cell (A2) containing raw product sales data formatted as follows:

ItemA:10,ItemB:15,ItemC:30

We want to split the items into rows and the item names and quantities into columns. To achieve this, we can set the comma (,) as our row delimiter and the colon (:) as our column delimiter:

=TEXTSPLIT(A2, ":", ",")

Resulting Table:

Column 1 Column 2
ItemA 10
ItemB 15
ItemC 30

Using Case-Insensitive Delimiters

Occasionally, you may want to split a text string using text-based delimiters (like words rather than symbols). For example, splitting a log file string by the words " AND " or " OR ". By default, TEXTSPLIT is case-sensitive.

If your text is "Apples AND oranges and bananas" and your delimiter is "and", a standard split will ignore "AND" because of the casing.

To resolve this, set the fifth argument (match_mode) to 1:

=TEXTSPLIT(A2, " and ", , , 1)

This tells Excel to treat "AND", "and", "And", and "aNd" identically, splitting the text flawlessly across all variations.

Troubleshooting Common Errors

While using TEXTSPLIT with multiple delimiters, you might encounter a few common errors. Here is how to fix them:

  • #NAME? Error: This means your version of Excel does not support the TEXTSPLIT function. It is currently exclusive to Microsoft 365, Excel for the Web, and Excel 2024/newer.
  • #VALUE! Error: This usually occurs if the text argument is empty or if there is an error in how your delimiter array constant is written (ensure you use curly braces {} and enclose each delimiter in double quotes).
  • #N/A Error (when splitting into rows and columns): If you are splitting into a 2D table and some rows have fewer items than others, Excel will return #N/A in the empty spaces. You can clean this up by using the sixth argument (pad_with) to specify a default placeholder (e.g., "-" or ""):
    =TEXTSPLIT(A2, ":", ",", , , "-")

Conclusion

The TEXTSPLIT function is a major leap forward for Excel data processing. By leveraging array constants (curly braces), you can easily split messy data using multiple delimiters in a single, dynamic formula. By combining it with functions like TRIM, you can build clean, automated, and robust data preparation workflows without ever needing complex legacy workarounds.

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.