CONCATENATE in Excel: combine text strings, cells and columns

In this tutorial, you will learn various ways to concatenate text strings, cells, ranges, columns and rows in Excel using the CONCATENATE function and "&" operator.

In your Excel workbooks, the data is not always structured according to your needs. Often you may want to split the content of one cell into individual cells, or do the opposite - combine data from two or more columns into a single column. Common examples that require concatenation in Excel are joining names and address parts, combining text with a formula-driven value, displaying dates and times in the desired format, to name a few.

In this tutorial, we are going to explore various techniques of Excel string concatenation so that you can choose the method best suited for your worksheets.

What is "concatenate" in Excel?

In essence, there are two ways to combine data in Excel spreadsheets:

  • Merge cells
  • Concatenate cells' values

When you merge cells, you "physically" merge two or more cells into a single cell. As a result, you have one larger cell that is displayed across multiple rows and/or columns in your worksheet.

When you concatenate cells in Excel, you combine only the contents of those cells. In other words, concatenation in Excel is the process of joining two or more values together. This method is often used to combine a few pieces of text that reside in different cells (technically, these are called text strings or simply strings) or insert a formula-calculated value in the middle of some text.

The following screenshot demonstrates the difference between these two methods:
Merge and concatenate in Excel

Merging cells in Excel is the subject of our next article, and in this tutorial we will tackle two essential ways to concatenate strings in Excel - by using the CONCATENATE function and the Excel & operator.

Excel CONCATENATE function

The CONCATENATE function in Excel is designed to join different pieces of text together or combine values from several cells into one cell.

The syntax of Excel CONCATENATE is as follows:

CONCATENATE(text1, [text2], …)

Where text is a text string, cell reference or formula-driven value.

The CONCATENATE function is supported in all versions of Excel for Microsoft 365, Excel 2019 - Excel 2007.

Note. In Excel 365 - Excel 2019, the CONCAT function is also available, which is a modern successor of CONCATENATE with exactly the same syntax. Although the CONCATENATE function is kept for backward compatibility, Microsoft does not give any promises that it will be supported in future versions of Excel.

Below you will find a few examples of using the CONCATENATE function in Excel.

Concatenating the values of several cells

The simplest CONCATENATE formula to combine the values of cells A1 and B1 is as follows:

=CONCATENATE(A1, B1)

Please note that the values will be knit together without any delimiter, as in row 2 in the screenshot below.

To separate the values with a space, enter " " in the second argument, as in row 3 in the screenshot below.

=CONCATENATE(A1, " ", B1)
CONCATENATE formula to combine the values of two cells

To separate the concatenated values with other delimiters such as a comma, space or slash, please see Excel CONCATENATE formulas with special characters.

Concatenating a text string and cell value

There is no reason for the Excel CONCATENATE function to be limited to only joining cells' values. You can also use it to concatenate various text strings to make the result more meaningful. For example:

=CONCATENATE(A1, " ", B1, " completed")

The above formula informs the user that a certain project is completed, as in row 2 in the screenshot below. Please notice that we add a space before the word " completed" to separate the concatenated text strings.

Naturally, you can add a text string in the beginning or in the middle of your Concatenate formula as well:

=CONCATENATE("See ", A1, " ", B1)

A space (" ") is added in between the combined values, so that the result displays as "Project 1" rather than "Project1".
Concatenating a text string and cell value

Concatenating a text string and a formula-calculated value

To make the result returned by some formula more understandable for your users, you can concatenate it with a text string that explains what the value actually is.

For example, you can use the following formula to return the current date:

=CONCATENATE("Today is ",TEXT(TODAY(), "dd-mmm-yy"))
Concatenating a text string and a formula-calculated value

Tip. If you would like to delete the source data without affecting the resulting text strings, use the "Paste special - values only" option to convert formulas to their values. The detailed instructions can be found in How to replace formulas with values in Excel.

Using CONCATENATE in Excel - things to remember

To ensure that your CONCATENATE formulas always deliver the correct results, remember the following simple rules:

  • Excel CONCATENATE function requires at least one "text" argument to work.
  • In a single CONCATENATE formula, you can concatenate up to 255 strings, a total of 8,192 characters.
  • The result of the CONCATENATE function is always a text string, even when all of the source values are numbers.
  • Excel CONCATENATE does not recognize arrays. Each cell reference must be listed separately. For example, you should write =CONCATENATE(A1, A2, A3) instead of =CONCATENATE(A1:A3).
  • If at least one of the CONCATENATE function's arguments is invalid, the formula returns a #VALUE! error.

"&" operator to concatenate strings in Excel

In Microsoft Excel, & operator is another way to concatenate cells. This method come in very handy in many scenarios because typing the ampersand sign (&) is much quicker than typing the word "concatenate" :)

Similarly to the CONCATENATE function, you can use "&" in Excel to combine different text strings, cell values and results returned by other functions.

Excel "&" formula examples

To see the concatenation operator in action, let's re-write the CONCATENATE formulas discussed above:

Concatenate the values in A1 and B1:

=A1&B1

Concatenate the values in A1 and B1 separated with a space:

=A1&" "&B1

Concatenate the values in A1, B1 and a text string:

=A1 & B1 & " completed"

Concatenate a string and the result of the TEXT / TODAY function:

="Today is " & TEXT(TODAY(), "dd-mmm-yy")

As demonstrated in the screenshot below, the CONCATENATE function and "&" operator return identical results:
Concatenate strings in Excel using the & operator

Excel "&" operator vs. CONCATENATE function

Many users wonder which is a more efficient way to concatenate strings in Excel - CONCATENATE function or "&" operator.

The only essential difference between CONCATENATE and "&" operator is the 255 strings limit of the Excel CONCATENATE function and no such limitations when using the ampersand. Other than that, there is no difference between these two concatenation methods, nor is there any speed difference between the CONCATENATE and "&" formulas.

And since 255 is a really big number and in real-life tasks someone will hardly ever need to combine that many strings, the difference boils down to the comfort and ease of use. Some users find CONCATENATE formulas easier to read, I personally prefer using the "&" method. So, simply stick to the concatenation technique that you feel more comfortable with.

Concatenate cells with a space, comma and other characters

In your worksheets, you may often need to join values in a way that includes commas, spaces, various punctuation marks or other characters such as a hyphen or slash. To do this, simply include the character you want in your concatenation formula. Remember to enclose that character in quotation marks, as demonstrated in the following examples.

Concatenating two cells with a space:

=CONCATENATE(A1, " ", B1)

or

=A1 & " " & B1

Concatenating two cells with a comma:

=CONCATENATE(A1, ", ", B1)

or

=A1 & ", " & B1

Concatenating two cells with a hyphen:

=CONCATENATE(A1, "-", B1)

or

=A1 & "-" & B1

The following screenshot demonstrates how the results may look like:
Concatenating cells with a space, comma and other characters

Concatenate text strings with line breaks

Most often, you would separate the concatenated text strings with punctuation marks and spaces, as shown in the previous example. In some cases, however, may need to separate the values with a line break, or carriage return. A common example is merging mailing addresses from data in separate columns.

A problem is that you cannot simply type a line break in the formula like a usual character, and therefore a special CHAR function is needed to supply the corresponding ASCII code to the concatenation formula:

  • On Windows, use CHAR(10) where 10 is the ASCII code for Line feed.
  • On the Mac system, use CHAR(13) where 13 is the ASCII code for Carriage return.

In this example, we have the address pieces in columns A through F, and we are putting them together in column G by using the concatenation operator "&". The merged values are separated with a comma (", "), space (" ") and a line break CHAR(10):

=A2 & " " & B2 & CHAR(10) & C2 & CHAR(10) & D2 & ", " & E2 & " " & F2

Concatenating cells with line breaks

Note. When using line breaks to separate the concatenated values, you must have the "Wrap text" option enabled for the result to display correctly. To do this, press Ctrl + 1 to open the Format Cells dialog, switch to the Alignment tab and check the Wrap text box.

In the same manner, you can separate concatenated strings with other characters such as:

  • Double quotes (") - CHAR(34)
  • Forward slash (/) - CHAR(47)
  • Asterisk (*) - CHAR (42)
  • The full list of ASCII codes is available here.

Though, an easier way to include printable characters in the concatenation formula is to simply type them in double quotes as we did in the previous example.

Either way, all four of the below formulas yield identical results:

=A1 & CHAR(47) & B1

=A1 & "/" & B1

=CONCATENATE(A1, CHAR(47), B1)

=CONCATENATE(A1, "/", B1)

Concatenating cells with special characters

How to concatenate columns in Excel

In order to concatenate two or more columns in Excel, you just enter a usual concatenation formula in the first cell, and then copy it down to other cells by dragging the fill handle (the small square that appears in the lower right hand corner of the selected cell).

For example, to concatenate two columns (column A and B) separating the values with a space, you enter the following formula in cell C2, and then copy it down to other cells. When you are dragging the fill handle to copy the formula, the mouse pointer changes to a cross, as shown in the screenshot below:
Concatenating two columns in Excel

Tip. A quick way to copy the formula down to other cells in the column is to select the cell with the formula and double-click the fill handle.

Please note that Microsoft Excel determines how far to copy cells after the fill handle double click based on the cells referred to by your formula. If there happen to be empty cells in your table, say cell A6 and B6 were blank in this example, the formula would be copied up to row 5 only. In this case, you would need to drag the fill handle down manually to concatenate the entire columns.

An alternative way to concatenate columns in Excel is to use the corresponding option of the Merge Cells add-in.

How to concatenate a range of cells in Excel

Combining values from multiple cells might take some effort because the Excel CONCATENATE function does not accept arrays and requires a single cell reference in each argument.

To concatenate several cells, say A1 to A4, you need either of the following formulas:

=CONCATENATE(A1, A2, A3, A4)
or

=A1 & A2 & A3 & A4

When joining a fairly small range, it's no big deal to enter all the references in the formula bar. A large range would be tedious to add, typing each cell reference manually. Below you will find 3 methods of quick range concatenation in Excel.

Method 1. Press CTRL to select multiple cells to be concatenated

To quickly select several cells, you can press the CTRL key and click on each cell you want to include in the CONCATENATE formula. Here are the detailed steps:

  1. Select a cell where you want to enter the formula.
  2. Type =CONCATENATE( in that cell or in the formula bar.
  3. Press and hold Ctrl and click on each cell you want to concatenate.
  4. Release the Ctrl button, type the closing parenthesis in the formula bar and press Enter.

To concatenate a range of cells, press CTRL to select multiple cells to be concatenated.

Note. When using this method you must click each individual cell. Selecting a range with the mouse would add an array to the formula, which the CONCATENATE function does not accept.

Method 2. Use the TRANSPOSE function to get the range

When you need to concatenate a huge range consisting of tens or hundreds of cells, the previous method is not fast enough because it requires clicking on each cell. In this case, a better way is to use the TRANSPOSE function to return an array, and then replace it with individual cell references in one fell swoop.

  1. In the cell where you want to output the concatenated range, enter the TRANSPOSE formula, for example:

    =TRANSPOSE(A1:A10)

  2. In the formula bar, press F9 to replace the formula with calculated values. As the result, you will have an array of numbers to be concatenated.
  3. Delete the curly braces surrounding the array values.
    Use the TRANSPOSE function to get the range
  4. Type =CONCATENATE( before the first value, then type the closing parenthesis after the last value, and press Enter.
    Use the CONCATENATE function to combine all of the values.
Note. Whichever method you use, the concatenated value in C1 is a text string (notice its left-alignment in the cell), although each of the original values is a number. This is because the CONCATENATE function always returns a text string regardless of the source data type.

Method 3. Use the Merge Cells add-in

A quick and formula-free way to concatenate any range in Excel is to use the Merge Cells add-in for Excel with the "Merge all areas in selection" option turned off, as demonstrated in Combine the values of several cells into one cell.

Concatenate numbers and dates in various formats

When you concatenate a text string with a number or date, you may want to format the result differently depending on your dataset. To do this, embed the TEXT function in your Excel concatenate formula.

The TEXT(value, format_text) function has two arguments:

  • In the first argument (value), you supply a number or date to be converted to text, or a reference to the cell containing a numeric value.
  • In the second argument (format_text), you enter the desired format using the codes that the TEXT function can understand.

We have already discussed one such formula in the beginning of this tutorial that concatenates text and date.

I will remind you that when combining a text string and date, you have to use the TEXT function to display the date in the desired format. For example:

=CONCATENATE("Today is ", TEXT(TODAY(), "mm/dd/yy"))

or

="Today is " & TEXT(TODAY(), "mm/dd/yy")

A few more formula examples that concatenate a text value and number follow below:

=A2 & " " & TEXT(B2, "$#,#0.00") - display the number with 2 decimal places and the $ sign.

=A2 & " " & TEXT(B2, "0.#") - does not display extra zeros and the $ sign.

=A2 & " " & TEXT(B2, "# ?/???") - display the number as a fraction.

Concatenating numbers and dates in various formats

How to split cells (opposite of CONCATENATE in Excel)

If you are looking for the opposite of CONCATENATE in Excel, i.e. you want to split one cell into several cells, a few options are available to you:

  • Text to Columns feature
  • Flash Fill option in Excel 2013 and 2016
  • Formulas (MID, RIGHT, LEFT functions)

You can find the detailed steps illustrated with formula examples and screenshots in the How to split cells in Excel tutorial.

Merge Cells add-in - formula-free way to concatenate cells in Excel

With the Merge Cells add-in included in Ultimate Suite for Excel, you can efficiently do both:

  • Merge several cells into one without losing data.
  • Concatenate the values of several cells into a single cell and separate them with any delimiter of your choosing.

The Merge Cells tool works with all Excel versions from 2003 to 2016 and can combine all data types including text strings, numbers, dates and special symbols. Its two key advantages are simplicity and speed - any concatenation is done in a couple of clicks. And now, let me show it to you in action.

Combine the values of several cells into one cell

To combine the contents of several cells, you select the range to concatenate and configure the following settings:

  • Cells into one under "What to merge";
  • Select the delimiter you want under "Separate values with", it's a comma and a space in this example;
  • Choose where you want to place the result, and most importantly
  • Uncheck the "Merge all areas in the selection" option. It is this option that determines whether the cells are merged or the cells' values are concatenated.

Combine the values of several cells into one cell with the Merge Cells add-in

Combine columns row-by-row

To concatenate two or more columns, you configure the Merge Cells' settings in a similar way, but choose Columns under "What to merge":
Concatenating columns row-by-row

Join rows column-by-column

To combine data in each individual row, column-by-column, you choose to merge Rows, select the delimiter you want (line break in this example), configure other settings the way you want and hit the Merge button. The result may look similar to this:
Concatenating rows column-by-column

To check how the Merge Cells add-in will cope with your data sets, you are welcome to use the below link to download a fully functional trial version of our Ultimate Suite for Excel.

Available downloads

Concatenation formula examples (.xlsx file)
Ultimate Suite 14-day fully-functional version (.zip file)

You may also be interested in