5-Popular Ways to Concatenate a Range of Cells in Excel

CONCATENATE is a handy function to concatenate text from different cells. You need to refer to the cells which you want to combine. It’s simple and easy to apply.

But here is a bad news. In concatenate, it’s not possible to refer to an entire range.

You need to select all the cells of a range one by one. And, if you try to refer to an entire range, it will return the text from the first cell.

In this situation, you do need a method where you can refer to an entire range of cells to combine it in a single cell.

So today, in this post, you will learn 5 different methods to combine a range into a single cell.

Download this raw data file from here to follow along.

1. Using Concatenate + Transpose

The best way to combine text from different cells into one cell is using transpose function with concatenate function.

Look at the below range of cell where you have a text but its every word is in a different cell and you want to get is all in one cell.

concatenate a range of cells with concatenate transpose

Here are the steps:

  1. In the B8, insert below formula and do not press enter.
    • =CONCATENATE(TRANSPOSE(A1:A5)&" ")
  2. Now, just select the entire inside portion of concatenate function and press F9.
  3. It will convert it into an array.
  4. After that, remove the curly brackets from the start and the end of the array.
  5. In the end, hit enter.

That’s all.

Explanation

In this formula, you have used transpose function and a space in the concatenate function. When you convert that reference into hard values it returns an array.

In this array, you have text from each cell and a space between them. And, when you hit enter, it combines all of them.

2. Fill Justify To Combine Text

Fill justify is one of the unused but most powerful tools in Excel. And, whenever you need to combine text from different cells you can use it.

​The best thing is, you need a single click to merge text. Have look at below data and follow the steps.

  1. First of all, make sure to increase the width of the column where you have text.
  2. After that, select all the cells.
  3. In the end, go to Home Tab -> Editing -> Fill -> Justify.

This will merge text from all the cells into the first cell of the selection.

Learn more about fill justify from here.

3. With Text Join Function

If you are using Excel 2016 (Office 365), there is a function called “TextJoin”. It can make it easy for you to combine text from different cells into a single cell.

Syntax:

TEXTJOIN(delimiter, ignore_empty, text1, [text2], …)

  1. delimiter a text string to use as a delimiter.
  2. ignore_empty true to ignore blank cell, false to not.
  3. text1 text to combine.
  4. [text2] text to combine optional.

How to use it

To combine below list of values you can use the formula:

=TEXTJOIN(" ",TRUE,A1:A5)

Here you have used space as a delimiter, TRUE to ignore blank cells and entire range in a single argument. In the end, hit enter and you’ll get all the text in a single cell.

4. Combine Text with Power Query

Power Query is a fantastic tool and I love it. You can also use it to combine text from a list in a single cell. Below are the steps.

  • Select the range of cells and click on “From Table” in data tab.
  • If will edit your data into Power Query editor.
  • Now from here, select the column and go to “Transform Tab”.
  • From “Transform” tab, go to Table and click on “Transpose”
  • Next, you need to merge all the columns.
  • For this, select all the columns (select first column, press and hold shift key, click on the last column) and press right click and then select “Merge”.
  • After that, from Merge window, select space as a separator and name the column.
  • In the end, click OK and click on “Close and Load”.

Now, you have a new worksheet your workbook with all the text in a single cell.

The best thing about using Power Query is you don’t need to do this setup again and again. When you update old list with a new value you need to refresh your query and it will add that new value in the cell.​

5. VBA code

If you want to use a macro code to combine text from different cell then I have something for you. With this code, you can combine text in no time.

All you need to do, select the range of cells where you have text and run this code.

Sub combineText()
Dim rng As Range
Dim i As String
For Each rng In Selection
i = i & rng & " "
Next rng
Range("B1").Value = Trim(i)
End Sub

Make sure to specify your desired location in the code where you want to combine the text.

Conclusion

​There may be the different situations for you where you need to concatenate a range of cell into a single cell. And, that’s why we have these different methods.

All methods are easy and quick, you need to select the right method as per your need. I must say that give a try to all the methods once.

And, once you try these methods I want you to tell me which one is your favorite and worked for you. Share your views with me in the comment section, I would love to hear from you.

Please, don’t forget to share these methods with your friends.​

  • Syed Waqar Hussain Shah

    fantastic knowledge

    • Puneet Gogia

      I’m so glad you liked it. 🙂

  • Jan Bolhuis

    Thanks for sharing

    • Puneet Gogia

      I’m so glad you liked it. 🙂

  • Yashpal Moray

    Very nice guidance on concatenate function. I liked and found useful for me with the transpose function. Thanks a lot!

    • Puneet Gogia

      You’re welcome.

  • Vitor Barreto

    This is great!

    I would (never) would have thought of these solutions (mainly the Concatenate one).

    Thanks.

    • Puneet Gogia

      I’m so glad to hear this.

  • Eric

    Hello Puneet,
    I like to use the macro. It works like a charm. Thank you.

    • Puneet Gogia

      That’s great.

  • Carlos Mario Castaño

    I am working with Spanish version. When I follow your instructions, after F9 I get:

    =CONCATENAR({“Today “”is “”a “”beautiful “”day “})

    After removing curly brackets, In order to obtain the correct result, we must change “” by “&”. This was the only way it worked for me.
    Please correct me case I was wrong.
    Thanks. Very interesting article.
    Carlos.

    • Puneet Gogia

      You are right, / is not a concatenation operator.

  • Krish

    Justify method is awesome…