How to split a long column into multiple columns in Excel?

Split long column into multiple columns with VBA
Split a long column into multiple columns with Kutools for Excel

Split long column into multiple columns with VBA
1. Press Alt + F11 keys together to open the Microsoft Visual Basic for Applications window.
2. Click Insert > Module and copy the follow VBA code to the popped out window.
VBA: Split long column into multiple columns.
Sub SplitColumn()
'Updateby20141106
Dim rng As Range
Dim InputRng As Range
Dim OutRng As Range
Dim xRow As Integer
Dim xCol As Integer
Dim xArr As Variant
xTitleId = "KutoolsforExcel"
Set InputRng = Application.Selection
Set InputRng = Application.InputBox("Range :", xTitleId, InputRng.Address, Type: = 8)
xRow = Application.InputBox("Rows :", xTitleId)
Set OutRng = Application.InputBox("Out put to (single cell):", xTitleId, Type: = 8)
Set InputRng = InputRng.Columns(1)
xCol = InputRng.Cells.Count / xRow
ReDim xArr(1 To xRow, 1 To xCol + 1)
For i = 0 To InputRng.Cells.Count - 1
xValue = InputRng.Cells(i + 1)
iRow = i Mod xRow
iCol = VBA.Int(i / xRow)
xArr(iRow + 1, iCol + 1) = xValue
Next
OutRng.Resize(UBound(xArr, 1), UBound(xArr, 2)).Value = xArr
End Sub
3. Click Run button or press F5 key to run the VBA, and a dialog popped out for selecting the data list, and then click OK to go to specify how many rows in one column you need in the next dialog, then click OK and select a cell to output the result. See screenshots:
![]() |
![]() |
![]() |
![]() |
![]() |
4. Click OK, then you can see the long column is split into multiple columns and every column has 15 cells.
Split a long column into multiple columns with Kutools for Excel
Maybe some of you do not like to use VBA code, fortunately, you can use the Transform Range utility of Kutools for Excel to quickly and easily convert a long column to fixed number of columns.
After installing Kutools for Excel, please do as below:
1. Select the column data you want to split, then click Kutools > Range > Transform Range. See screenshot:
2. In the popped out dialog, check Single column to range option, then check Fixed value option and type the number of columns you need into the textbox. See screenshot:
3. Click Ok and select a single cell to put out the split data. See screenshot:
4. Click OK to finish the operations. Now the long column data has been split into three columns.
Is it easier than VBA code? With Transform Range utility, you can convert a row to range, a range to a row or one column.
Best Office Productivity Tools
Supercharge Your Excel Skills with Kutools for Excel, and Experience Efficiency Like Never Before. Kutools for Excel Offers Over 300 Advanced Features to Boost Productivity and Save Time. Click Here to Get The Feature You Need The Most...
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!
All Kutools add-ins. One installer
Kutools for Office suite bundles add-ins for Excel, Word, Outlook & PowerPoint plus Office Tab Pro, which is ideal for teams working across Office apps.





- All-in-one suite ā Excel, Word, Outlook & PowerPoint add-ins + Office Tab Pro
- One installer, one license ā set up in minutes (MSI-ready)
- Works better together ā streamlined productivity across Office apps
- 30-day full-featured trial ā no registration, no credit card
- Best value ā save vs buying individual add-in