Excel Combine Columns Into One Column

Excel Combine Columns Into One Column

Jan 11, 2020 If you want to combine multiple columns in excel into one column in excel using excel VBA macro, then use below code. This macro combines data in multiple columns into one column. When you run the macro, it asks you to enter the number of columns to combine (starting from column A), For example, If you are thinking on “how to merge two. Sep 27, 2012 Luckily you can combine multiple columns into one column in Excel 2010 using a specific formula. You can even choose to separate the data with a word or character. How to Combine Columns in Excel 2010. Note that this is a little different than the Merge feature that you might have used in other situations. This method will not actually change.

In case you have a requirement on combining multiple columns to on column & you did not have a clue then this whole article is for you. In this article we are going to learn how to combine multiple columns to one column using vba code.

From below snapshot:-

Multiple columns into single column excel

Following is the snapshot of require output:-

We need to follow the below steps:

  • Click on Developer tab
  • From Code group select Visual Basic

Enter the following code in the standard module

Sub MultipleColumns2SingleColumn()


Const shName1 As String = 'Sheet1' 'Change sheet name here

Const shName2 As String = 'Sheet2'

Dim arr, arrNames

With Worksheets(shName1)

arrNames = .Range('F1', .Cells(1, Columns.Count).End(xlToLeft))

For i = 2 To .Cells(Rows.Count, 1).End(xlUp).Row

arr = .Cells(i, 1).Resize(, 4)

With Worksheets(shName2)

With .Cells(Rows.Count, 1).End(xlUp)

.Offset(1).Resize(UBound(arrNames, 2), 4) = arr

.Offset(1, 5).Resize(UBound(arrNames, 2)) = Application.Transpose(arrNames)

Excel Combine Columns Into One Column Excel

End With

End With


End With

End Sub

As you execute the macro; the macro will transfer the data from multiple columns to a single column.

In this way we can combine multiple columns data in a single column.

How to transpose data from column into one single cell in Excel?

When you need to transpose a list of data into one single cell in a worksheet, normally, you can apply the Concatenate function to merge the list of cells into one cell, but, it will be complex if there are huge data need to be combined. This article, I will talk about some quick tricks for you to solve this task in Excel.

Transpose data from column into one single cell with Kutools for Excel

Except the Concatenate function to merge a list of cell values, you can apply the following VBA code to get the result as quickly as you can.

1. Hold down the ALT + F11 keys, and it opens the Microsoft Visual Basic for Applications window.

2. Click Insert > Module, and paste the following code in the Module Window.

VBA code: Transpose data from column into one single cell

3. Then save and close this code, go back the worksheet, and enter this formula: =transposerange(A1:A10) into a blank cell to put the result, and press Enter key, you will get all the cell values in a column have been located in a single cell, see screenshot:

Note: In the above code, A1:A10 is the list range you want to transpose into one single cell, and also, you can separate the merged content with other delimiters, such as comma, dash, space, etc. by just changing the comma in the script xStr = xStr & xCell.Value & ','.

If you have Kutools for Excel, with its powerful tool-Combine, you can combine data in a column, row or a range to one cell.

Kutools for Excel: with more than 300 handy Excel add-ins, free to try with no limitation in 30 days.

After installing Kutools for Excel, please do as follows:( Free Download Kutools for Excel Now! )

1. Select the data column that you want to combine into one cell.

2. Click Kutools > Merge & Split > Combine Rows, Columns or Cells without Losing Data, see screenshot:


3. In the popped out dialog box, select Combine into single cell under the To combine selected cells according to following options, and then specify a separator to separate the merged content, see screenshot:

4. Then click Ok or Apply button, and you will get the following result as you need:

Kutools for Excel: with more than 300 handy Excel add-ins, free to try with no limitation in 30 days. Download and free trial Now!

The Best Office Productivity Tools

Kutools for Excel Solves Most of Your Problems, and Increases Your Productivity by 80%

  • Reuse: Quickly insert complex formulas, charts and anything that you have used before; Encrypt Cells with password; Create Mailing List and send emails...
  • Super Formula Bar (easily edit multiple lines of text and formula); Reading Layout (easily read and edit large numbers of cells); Paste to Filtered Range...
  • Merge Cells/Rows/Columns without losing Data; Split Cells Content; Combine Duplicate Rows/Columns... Prevent Duplicate Cells; Compare Ranges...
  • Select Duplicate or Unique Rows; Select Blank Rows (all cells are empty); Super Find and Fuzzy Find in Many Workbooks; Random Select...
  • Exact Copy Multiple Cells without changing formula reference; Auto Create References to Multiple Sheets; Insert Bullets, Check Boxes and more...
  • Extract Text, Add Text, Remove by Position, Remove Space; Create and Print Paging Subtotals; Convert Between Cells Content and Comments...
  • Super Filter (save and apply filter schemes to other sheets); Advanced Sort by month/week/day, frequency and more; Special Filter by bold, italic...
  • Combine Workbooks and WorkSheets; Merge Tables based on key columns; Split Data into Multiple Sheets; Batch Convert xls, xlsx and PDF...
  • More than 300 powerful features. Supports Office/Excel 2007-2019 and 365. Supports all languages. Easy deploying in your enterprise or organization. Full features 30-day free trial. 60-day money back guarantee.

Office Tab Brings Tabbed interface to Office, and Make Your Work Much Easier

  • Enable tabbed editing and reading in Word, Excel, PowerPoint, Publisher, Access, Visio and Project.
  • Open and create multiple documents in new tabs of the same window, rather than in new windows.
  • Increases your productivity by 50%, and reduces hundreds of mouse clicks for you every day!
or post as a guest, but your post won't be published automatically.

Excel Convert Multiple Columns To One Column

Loading comment... The comment will be refreshed after 00:00.
  • To post as a guest, your comment is unpublished.
    Thanks a lot! I'm using your following function and it works very well. I would like to include an 'if' function in the transposerange. What should I add to the function in VBA? Basically, it would work like a countif. So we would read the formula =transposerangeif(range,criteria).
    Thanks in advance!
    Function transposeRange(Rg As Range)
    'updateby Extendoffice 20151207
    Dim xCell As Range
    Dim xStr As String
    For Each xCell In Rg
    If Not IsEmpty(xCell.Value) Then
    xStr = xStr & xCell.Value & ','
    End If
    transposeRange = Left(xStr, Len(xStr) - 1)
    End Function
    • To post as a guest, your comment is unpublished.
      Could you give an example for your need, you can insert a screenshot here.
  • To post as a guest, your comment is unpublished.
    Thanks, this was very helpful.