HI,
I'm new to VBA and I am trying to split the data in my columns into separate rows while keeping the 1st column as well as the header intact. I have an existing code which allows me to split column B but I'm trying to edit the code such that I am able to split the data starting from Column B all the way to the last column. Can anyone kindly advice on how to do that? I've attached the excel file with the data as well as the below macro already in there.
Thank you and I sincerely appreciate the help!
____________________________________________________________________________________________________________________________
![]()
Option Explicit Const ANALYSIS_ROW As String = "B" Const DATA_START_ROW As Long = 1 Sub ReplicateData() Dim iRow As Long Dim lastrow As Long Dim ws As Worksheet Dim iSplit() As String Dim iIndex As Long Dim iSize As Long 'Application.ScreenUpdating = False Application.Calculation = xlCalculationManual With ThisWorkbook .Worksheets("Concertina").Copy After:=.Worksheets("Concertina") Set ws = ActiveSheet End With With ws lastrow = .Cells(.Rows.Count, ANALYSIS_ROW).End(xlUp).Row End With For iRow = lastrow To DATA_START_ROW Step -1 iSplit = Split(ws.Cells(iRow, ANALYSIS_ROW).Value2, ",") iSize = UBound(iSplit) - LBound(iSplit) + 1 If iSize = 1 Then GoTo Continue ws.Rows(iRow).Copy ws.Rows(iRow).Resize(iSize - 1).Insert For iIndex = LBound(iSplit) To UBound(iSplit) ws.Cells(iRow, ANALYSIS_ROW).Offset(iIndex).Value2 = iSplit(iIndex) Next iIndex Continue: Next iRow Application.CutCopyMode = False Application.Calculation = xlCalculationAutomatic 'Application.ScreenUpdating = True End Sub
Bookmarks