How to merge two columns in Excel without losing data

From this short article you will learn how to merge multiple Excel columns into one without losing data.

You have a table in Excel and what you want is to combine two columns, row-by-row. For example, you want to merge the First Name & Last Name columns into one, or join several columns such as Street, City, Zip, State into a single "Address" column, separating the values with a comma so that you can print the addresses on envelops later. Merge Excel columns into one without losing data

Regrettably, Excel does not provide any built-in tool to achieve this. Of course, there is the Merge button ("Merge & Center" etc.), but if you select 2 adjacent cells in order to combine them, as shown in the screenshot: The Merge button in Excel

You will get the error message "Merging cells only keeps the upper-left cell value, and discards the other values." (Excel 2013) or "The selection contains multiple data values. Merging into one cell will keep the upper-left most data only." (Excel 2010, 2007) The selection contains multiple data values. Merging into one cell will keep the upper-left most data only.

Further in this article, you will find 3 ways that will let you merge data from several columns into one without losing data, and without using VBA macro. If you are looking for the fastest way, skip the first two, and head over to the 3rd one straight away.

Merge two columns using Excel formulas

Say, you have a table with your clients' information and you want to combine two columns (First & Last names) into one (Full Name).

  1. Insert a new column into your table. Place the mouse pointer in the column header (it is column D in our case), right click the mouse and choose "Insert" from the context menu. Let's name the newly added column "Full Name". Insert a new column into your table
  2. In cell D2, write the following CONCATENATE formula:

    =CONCATENATE(B2," ",C2)

    In Excel 2016 - Excel 365, you can also use the CONCAT function for the same purpose:

    =CONCAT(B2," ",C2)

    Where B2 and C2 are the addresses of First Name and Last Name, respectively. Note that there is a space between the quotation marks " " in the formula. It is a separator that will be inserted between the merged names, you can use any other symbol as a separator, e.g. a comma. Excel formula to merge two columns with spaces

    In a similar fashion, you can join data from several cells into one, using any separator of your choice. For instance, you can combine addresses from 3 columns (Street, City, Zip) into one. Formula to merge address from multiple columns in to 1

  3. Copy the formula to all other cells of the Full Name column. Or see how to enter the same formula into multiple cells at once.
  4. Well, we have combined the names from 2 columns in to one, but this is still the formula. If we delete the First name and /or the Last name, the corresponding data in the Full Name column will also be gone. Combined names from 2 columns in to 1
  5. Now we need to convert the formula to a value so that we can remove unneeded columns form our Excel worksheet. Select all cells with data in the merged column (select the first cell in the "Full Name" column, and then press Ctrl + Shift + ArrowDown).

    Copy the contents of the column to clipboard (Ctrl + C or Ctrl + Ins, whichever you prefer), then right click on any cell in the same column ("Full Name" ) and select "Paste Special" from the context menu. Select the Values button and click OK. Convert the formula to a value

  6. Remove the "First Name" & "Last Name" columns, which are not needed any longer. Click the column B header, press and hold Ctrl and click the column C header (an alternative way is to select any cell in column B, press Ctrl + Space to select the entire column B, then press Ctrl + Shift + ArrowRight to select the whole column C).

    After that right click on any of the selected columns and choose Delete from the context menu: Delete two Excel columns

Fine, we have merged the names from 2 columns into one! Though, it did require some effort :) Excel: Merged data from two columns

Combine columns data via Notepad

This way is faster than the previous one, it doesn't require formulas, but it is suitable only for combining adjacent columns and using the same delimiter for all of them.

Here is an example: we want to combine 2 columns with the First Names and Last Names into one.

  1. Select both columns you want to merge: click on B1, press Shift + Right Arrrow to select C1, then press Ctrl + Shift + Down Arrow to select all the cells with data in two columns. Select 2 columns in Excel that we want to merge
  2. Copy data to clipboard (press Ctrl + C or Ctrl + Ins, whichever you prefer).
  3. Open Notepad: Start-> All Programs -> Accessories -> Notepad.
  4. Insert data from the clipboard to the Notepad (Press Ctrl + V or Shift + Ins). Insert data from Excel columns to the Notepad
  5. Copy tab character to clipboard. Press Tab right in Notepad, press Ctrl + Shift + Home, then press Ctrl + X.
  6. Replace Tab characters in Notepad with the separator you need.

    Press Ctrl + H to open the "Replace" dialog box, paste the Tab character from the clipboard in the "Find what" field, type your separator, eg. Space, comma etc. in the "Replace with" field. Press the "Replace All" button; then press "Cancel" to close the dialog box. Replace the Tab character with Space

  7. Press Ctr + A to select all the text in Notepad, then press Ctrl + C to copy it to Clipboard.
  8. Switch back to your Excel worksheet (press Alt + Tab), select just B1 cell and paste text from the Clipboard to your table. Paste merged data back to the Excel column
  9. Rename column B to "Full Name" and delete the "Last name" column.

There are more steps than in the previous option, but believe me or try it yourself - this way is faster. The next way is even faster and easier :)

Join columns using the Merge Cells add-in for Excel

The quickest and easiest way to combine data from several Excel columns into one is to use Merge Cells add-in for Excel included with our Ultimate Suite for Excel.

With the Merge Cells add-in, you can combine data from several cells using any separator you like (e.g. space, comma, carriage return or line break). You can join values row by row, column by column or merge data from the selected cells into one without losing it.

How to combine two columns in 3 simple steps

  1. Download and install the Ultimate Suite.
  2. Select all cells from 2 or more columns that you want to merge, go to the Ablebits.com Data tab > Merge group, and click Merge Cells > Merge Columns into One. Select 2 columns to merge and run the Merge Cells add-in
  3. In the Merge Cells dialog box, select the following options:
    • How to merge: columns into one (preselected)
    • Separate values with: choose the desired delimiter (space in our case)
    • Place the results to: left column
  4. Make sure the Clear the contents of selected cells option is ticked and click Merge. Select the following options in the Merge Cells dialog box

That's it! A few simple clicks and we've got two columns merged without using any formulas or copy/pasting. Columns merged using excel addin

To finish up, rename column B to Full Name and delete column "C", which is not needed any longer.

Much easier than the two previous ways, isn't it? :)

260 comments

  1. Thankx so much saved my lot of time

  2. THANK YOU! The formula tip saved me 6 hours of needless work.

  3. Thanks! Saved me a lot of time! ;-)

  4. Hi,

    Thanks for this tutorial. I'd like to merge date and time into a row. However, they are in different format so the dates appear to be incorrect after merge. Can you please advise me what's the best way to do this? I downloaded Ablebeit Data but I can't merge row by row. There are only rows into one, col. into one and cells into one?

    Thanks.

    • Auz:
      Don't know of any way to format one cell with different time and date formats. Excel uses two different methods to store these types of numbers.

  5. THANK YOU FOR YOUR HELP.

  6. Thanks a lot. This trick saved a lot of my time.

  7. Thank you very much , very useful info

  8. I downloaded the add in and in the merge cells pop up window. How to Merge field does not give me 'row by row' option only 'rows into one' which creates on really long row and not the individual rows.

    • I had the same dilemma. So I tried this ... When indicating "How to merge:" select "Columns into one", separate values with space, place the results "to left column." It worked.

      • Can you explain this more thoroughly

  9. Super helpful - saved me tons of time. #1 option was easy. Thank you!!!!!!!

  10. Merge Tool is really great

  11. Thank you! Big time saver for me today!

  12. Many thanks.

  13. Thank you

  14. very useful information you share,
    I like it very much.

  15. you missed a step. How do you automatically change the column numbers? If I want to merge 3,000 cells, it's going to take a couple of days to do.

    • Hi Trey,
      Drag the formula down- it worked for me. Then i copied and pasted it as value in the other column and then back again.

  16. Try this formula : [=A2&" "&B2] , Use the Cells you wish to combine instead of A2 and B2 :)

    • Thank you!

      Using Excel 2003, I put [=C2&" "&C12] (without the brackets) into cell C13 and it worked like a charm.

      • Thank you very much, your formula worked excellent.

      • Thanks its supporting in excel 2007 also

      • What if you want to merge three cells? This formula actually did work for two, which was very exciting but I need three merged.

        • Heather, If you're using the CONCATENATE formula you only need add a separator, as needed and the specific cell(s):
          Example:
          =CONCATENATE(D2,",",E2)
          Should you want to add other cells:
          =CONCATENATE(D2,",",E2,",",F2)
          if you want to add a space also between the characters then:
          =CONCATENATE(D2,", ",E2)

          Hope this is helpful.

    • Thanks this is a great formula.

    • Thank you so much Justin, this worked perfectly!

    • worked for me thank you ☺

  17. Saved me hours of cut and paste - thank you!!

  18. thanks a lot for merge formula.

  19. I am utilizing excel 2013. I inserted the formula as shown and the result I get is #NAME?. Any Advice?

    • Brian try typing =Concatenate( and then click on the column you want first , "for spaces between the words", click the second column you want )

    • U can use ****"" ujghc sg

  20. Nice tutorial. Might be useful for someone, I'm using Excel 2007 on Windows 10 and the function is CONCATENER(), CONCATENATE() didn't work.

    • No, CONCATENATE() is correct - you are just using the french version of excel where this has been translated..

Post a comment



Thank you for your comment!
When posting a question, please be very clear and concise. This will help us provide a quick and relevant solution to
your query. We cannot guarantee that we will answer every question, but we'll do our best :)