Split Delimited Text into Columns

Excel Formulas › Data Cleaning

All versionsFIND

One cell holding "Smith;John;Sales" needs splitting into columns. Use FIND to locate each delimiter and MID/LEFT to pull each piece — or TEXTSPLIT on Excel 365.


Quick formula: first field before the delimiter:
=LEFT(A2, FIND(";", A2) - 1)
FIND locates the delimiter; LEFT takes everything before it. Repeat with MID for middle fields.

Functions used (tap for the full reference guide):

The example

"Smith;John;Sales" into 3 columns.

AB
1FieldValue
21stSmith
32nd / 3rdJohn / Sales

The formula

The formula:

=LEFT(A2, FIND(";", A2) - 1) // FIND the delimiter, slice

How it works

How it works:

  1. The first field: LEFT(A2, FIND(";", A2) - 1) — everything before the first delimiter.
  2. The last field: TRIM(RIGHT(SUBSTITUTE(A2, ";", REPT(" ", 99)), 99)) — the classic last-token trick.
  3. Middle fields need MID with two FINDs, or the REPT/MID approach per position.
  4. On Excel 365, TEXTSPLIT(A2, ";") spills all fields in one formula.

The REPT trick splits any token cleanly. SUBSTITUTE(text, delim, REPT(" ",99)) pads each delimiter to 99 spaces, then MID(…, (n-1)*99+1, 99) with TRIM grabs the n-th field. It handles variable-length pieces without nested FINDs — the pre-365 workhorse for splitting delimited text. On 365, just use TEXTSPLIT.

Try it: interactive demo

Live demo

Delimited text and a delimiter.

Variations

Last field

REPT trick:

=TRIM(RIGHT(SUBSTITUTE(A2, ";", REPT(" ",99)), 99))

Nth field (REPT)

Any position:

=TRIM(MID(SUBSTITUTE(A2,";",REPT(" ",99)), (n-1)*99+1, 99))

365 spill

All at once:

=TEXTSPLIT(A2, ";")

Pitfalls & errors

Subtract 1 from FIND. LEFT length excludes the delimiter itself.

Missing delimiter errors. FIND fails if the delimiter isn’t present — wrap in IFERROR.

TEXTSPLIT is 365-only. Use the FIND/REPT approach in older Excel.

Practice workbook

📊
Download the free Split Delimited Text into Columns practice workbook
A split-text sheet with the last-field, nth-field, and TEXTSPLIT variants, plus 4 challenges with answers. No sign-up required.

Frequently asked questions

How do I split delimited text into columns with a formula?
First field: =LEFT(A2, FIND(";", A2) - 1). Use the REPT/MID trick for middle and last fields, or TEXTSPLIT on 365.
How do I get the last field after a delimiter?
Use =TRIM(RIGHT(SUBSTITUTE(A2, ";", REPT(" ",99)), 99)).
Is there a one-formula way?
On Excel 365, =TEXTSPLIT(A2, ";") spills every field at once.

Stop fighting formulas. Learn them in a day.

This recipe is one of hundreds of real-world formulas we teach. Our Excel Formulas & Functions class covers lookups, logic, text, and dynamic arrays hands-on — live in Dallas–Fort Worth, Houston, Austin, Oklahoma City, Denver, or online.

See the Formulas & Functions Class

Related formulas: Extract between · Find text position · Split text

Function references: FINDMID