Skip to main content
SheetTidy

Split a column into several in Excel and CSV files

Turn full names into first and last, addresses into city, state and PIN, or codes into their parts, without the Text to Columns wizard.

  1. 1
  2. 2
  3. 3
  4. 4

Drop your Excel or CSV file here

XLSX, XLSM, XLS, ODS, CSV, TSV or JSON

Your file never leaves your device

How to use this tool

  1. Step 1: Open your file

    Drop an Excel or CSV file onto the tool and choose the column to split, for example Full name or Address.

  2. Step 2: Choose where to split

    Split at a separator such as a comma, a space, a semicolon or any text you type, or at fixed positions such as after the 3rd and 6th characters.

  3. Step 3: Name the new columns

    Type names such as First name, Last name, or leave it empty for numbered names like Address 1 and Address 2. You can also cap how many columns are created.

  4. Step 4: Preview and download

    Check the new columns in the After view, then download the result in the same format you opened.

How to split a column manually in Excel

Excel offers several ways to break one column into many. Each has a catch worth knowing before you use it on a real file.

Text to Columns

  1. Insert enough empty columns to the right of the column you want to split. Text to Columns writes over whatever is next to it.
  2. Select the column, then go to Data › Text to Columns.
  3. Choose Delimited if the parts are separated by a character, or Fixed width if every part has the same length. Click Next.
  4. Tick the separator (Tab, Semicolon, Comma, Space or Other). Tick Treat consecutive delimiters as one if some cells contain double spaces, otherwise you get empty columns.
  5. On the last step, click each column in the preview and set Column data format to Text for anything with leading zeros, such as PIN codes or customer numbers. Set Destination to an empty cell if you do not want to overwrite neighbouring data.
  6. Click Finish. If cells to the right already contain data, Excel asks once whether to replace it, and clicking OK overwrites them.

The wizard is a one-off action: if a new row is added later, you run it again.

Flash Fill

Type the first name of the first row in an empty column, for example “Rahul” beside “Rahul Kumar Mehta”, then press Ctrl+E. Excel guesses the pattern and fills the rest. It is fast for tidy lists, but it guesses wrongly when rows have different numbers of parts, so check a few rows by hand.

TEXTSPLIT, TEXTBEFORE and TEXTAFTER

In Microsoft 365, =TEXTSPLIT(A2,", ") spills each part of the cell into the columns to the right. =TEXTBEFORE(A2," ") returns everything before the first space and =TEXTAFTER(A2," ",-1) everything after the last one, which is a neat way to get a first and last name. These formulas are not available in Excel 2016 or 2019, and the result disappears if you delete the source column, so paste the values back before cleaning up.

LEFT, MID and FIND in older versions

Older versions need nested formulas, for example =LEFT(A2,FIND(" ",A2)-1) for the first word and =MID(A2,FIND(" ",A2)+1,LEN(A2)) for the rest. They return #VALUE! for any cell without a space, so most people wrap them in IFERROR.

Power Query

Select the data, choose Data › From Table/Range, then Home › Split Column › By Delimiter or By Number of Characters. Power Query is reliable for repeated imports but heavy for a quick one-time job.

Where this tool helps

Full names into first and last name. CRMs and email platforms usually want separate name fields. Split at a space with “Most columns to create” set to 2 to keep middle names with the surname, or leave it at 0 to get one column per word.

Addresses into city, state and PIN. A column like “Pune, Maharashtra, 411001” splits at a comma into three columns. Because the parts are trimmed, there is no stray space at the start of “Maharashtra”.

Product and customer codes. A code such as “MH-000124” splits at a dash into the state prefix and the number, and the number keeps its zeros. Codes with no separator, like “ABC123XY”, can be split at fixed positions: entering “3, 6” gives “ABC”, “123” and “XY”.

“Last, First” lists. Exports from some HR and school systems write names as “Mehta, Rahul”. Split at a comma and name the new columns Last name, First name.

How the tool handles the details

  • New columns go where the old one was, so the rest of the sheet keeps its order. Turn on “Keep the original column” to keep the source next to its parts.
  • Unnamed columns are numbered after the source, such as Address 1, Address 2 and Address 3. Names you type are used from left to right.
  • Up to 50 columns can be created, enough for the longest cell in almost any file.
  • Nothing is overwritten. Unlike Text to Columns, the new columns are inserted, so the data to the right moves along rather than being replaced.
  • A plain summary tells you what happened, for example “Split 5 cells in Address at a comma into 3 columns: Address 1, Address 2 and Address 3.” If no cell contains the separator, the file is left unchanged and the summary says so.

The output keeps the format you opened, so a CSV comes back as a CSV and an Excel workbook as an Excel workbook.

Examples

Before Split at After
Rahul Kumar Mehta Space, max 2 Rahul · Kumar Mehta
Pune, Maharashtra, 411001 Comma Pune · Maharashtra · 411001
MH-000124 Other: - MH · 000124
ABC123XY Positions 3, 6 ABC · 123 · XY
Mehta, Rahul Comma Mehta · Rahul

Before you split

Remove extra spaces and fix the case first if the column is messy, so the new columns come out clean. If you later need the parts joined back together in a different order, the Combine columns tool does the reverse.

Frequently asked questions

Will codes like 0110001 or 00123 lose their leading zeros?

No. Every part is stored as text, so leading zeros survive. Excel's Text to Columns turns "00123" into 123 unless you set that column's data format to Text in the last step of the wizard.

What if some names have a middle name and others do not?

The tool creates as many columns as the longest cell needs. If you want exactly two, set "Most columns to create" to 2: "Rahul Kumar Mehta" becomes "Rahul" and "Kumar Mehta", with the extra parts kept together in the last column.

What happens to cells that do not contain the separator?

They go into the first new column unchanged and the other new columns stay empty for that row. Dates and true/false values are never split.

Is the original column kept?

Not by default: the new columns replace it in the same position. Turn on "Keep the original column" if you want both side by side.

Do several spaces in a row create empty columns?

No. When you split at a space, a run of spaces counts as one separator, and every part is trimmed, so "Priya Shah" still gives two clean columns.

Can I split at a slash, a dash or a pipe?

Yes. Choose "Other" and type any text, such as /, - or |. It is matched exactly as typed, including longer separators like " - ".

All fix tools