You are on page 1of 13

CONCATENATE in Excel: combine text strings, cells and

columns
ablebits.com/office-addins-blog/2015/07/15/excel-concatenate-strings-cells-columns

July 15, 2015

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:

1/13
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.

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

Note. In Excel 2016, Excel 2019, Excel Online and Excel Mobile, CONCATENATE is replaced
with the CONCAT function, which has exactly the same syntax. Although the
CONCATENATE function is kept for backward compatibility, it is recommended to use
CONCAT instead because Microsoft does not give any promises that CONCATENATE will
be available in future versions of 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)

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")


2/13
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 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"))

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" :)
3/13
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:

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


4/13
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:

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:

5/13
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

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

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)

6/13
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:

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

7/13
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:

Select a cell where you want to enter the formula.


Type =CONCATENATE( in that cell or in the formula bar.
Press and hold Ctrl and click on each cell you want to concatenate.
Release the Ctrl button, type the closing parenthesis in the formula bar and press
Enter.

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.

Select the cell where you want to output the concatenated range.
8/13
Enter the TRANSPOSE formula in that cell, =TRANSPOSE(A1:A10) in this example.
In the formula bar, press F9 to replace the formula with calculated values.
Delete the curly braces that turn a usual Excel formula into an array formula. As a
result, you will have all the cells references to be included in your concatenation
formula.

Type =CONCATENATE( in front of the cell


references in the formula bar, type the closing
parenthesis and press Enter.

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.
9/13
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.

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 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.
10/13
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 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":

11/13
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:

12/13
To check how the Merge Cells add-in will cope with your data sets, you are welcome to
download a fully functional trial version. And if you are happy with the result, you may want
to buy helpful tool as a separate product or as part of our Ultimate Suite for Excel, which
includes 60+ other time-saving tools for most common Excel tasks. Either way, we will
happily offer you the 15% off coupon code that we've created especially for our blog
readers: AB14-BlogSpo.

If someone wants to examine the formulas discussed in this tutorial more closely, the
Sample workbook with concatenation formulas is available for download. Thank you for
reading!

See also

13/13

You might also like