Hi Sir,
Thanks for your reply.
But with your code, we have not eliminated multiple copy pastes for individual cells. I want to reduce no of such rows here.
In your code, i is row number or j is row number?
Here is my complete existing code now:
Dim Start_Date As Date
Dim End_Date As Date
Dim i As Integer
Dim Start_Row As Integer
Dim endrow As Integer
Start_Date = Worksheets("Series").Range("H8")
End_Date = Worksheets("Series").Range("H9")
For i = 18 To 715
If Worksheets("Series").Cells(i, 4) = Start_Date Then
Start_Row = i
ElseIf Worksheets("Series").Cells(i, 4) = End_Date Then
endrow = i
End If
Next i
For i = Start_Row To endrow
'Step 1
'Input Entry 1
Worksheets("SeriesData1").Range("AB14") = Worksheets("Series").Cells(i, 7)
Worksheets("SeriesData1").Range("AB15") = Worksheets("Series").Cells(i, 6)
Worksheets("SeriesData1").Range("AB16") = Worksheets("Series").Cells(i, 5)
Worksheets("SeriesData1").Range("AB17") = Worksheets("Series").Cells(i, 9)
Worksheets("SeriesData1").Range("AB18") = Worksheets("Series").Cells(i, 8)
'Entry no 2
Worksheets("SeriesData1").Range("AB19") = Worksheets("Series").Cells(i, 11)
Worksheets("SeriesData1").Range("AB20") = Worksheets("Series").Cells(i, 10)
Worksheets("SeriesData1").Range("AB21") = Worksheets("Series").Cells(i, 13)
Worksheets("SeriesData1").Range("AB22") = Worksheets("Series").Cells(i, 12)
'Worksheets("SeriesData1").Range("D13") = Worksheets("Series").Cells(i, 8)
'Worksheets("SeriesData1").Range("D9") = Worksheets("Series").Cells(i, 26)
'Entry no 3
Worksheets("SeriesData1").Range("AB23") = Worksheets("Series").Cells(i, 15)
Worksheets("SeriesData1").Range("AB24") = Worksheets("Series").Cells(i, 14)
Worksheets("SeriesData1").Range("AB25") = Worksheets("Series").Cells(i, 17)
Worksheets("SeriesData1").Range("AB26") = Worksheets("Series").Cells(i, 16)
'Input Entry 4
Worksheets("SeriesData1").Range("AB27") = Worksheets("Series").Cells(i, 19)
Worksheets("SeriesData1").Range("AB28") = Worksheets("Series").Cells(i, 18)
Worksheets("SeriesData1").Range("AB29") = Worksheets("Series").Cells(i, 21)
Worksheets("SeriesData1").Range("AB30") = Worksheets("Series").Cells(i, 20)
'Input Entry 5
Worksheets("SeriesData1").Range("AB31") = Worksheets("Series").Cells(i, 23)
Worksheets("SeriesData1").Range("AB32") = Worksheets("Series").Cells(i, 22)
Worksheets("SeriesData1").Range("AB33") = Worksheets("Series").Cells(i, 25)
Worksheets("SeriesData1").Range("AB34") = Worksheets("Series").Cells(i, 24)
'Input 6
Worksheets("SeriesData1").Range("AB35") = Worksheets("Series").Cells(i, 57)
Worksheets("SeriesData1").Range("AB36") = Worksheets("Series").Cells(i, 58)
Worksheets("SeriesData1").Range("AB37") = Worksheets("Series").Cells(i, 59)
Worksheets("SeriesData1").Range("AB38") = Worksheets("Series").Cells(i, 60)
Worksheets("SeriesData1").Range("AB39") = Worksheets("Series").Cells(i, 61)
'Process Inlet 7
Worksheets("SeriesData1").Range("AB40") = Worksheets("Series").Cells(i, 62)
Worksheets("SeriesData1").Range("AB41") = Worksheets("Series").Cells(i, 63)
Worksheets("SeriesData1").Range("AB42") = Worksheets("Series").Cells(i, 64)
Worksheets("SeriesData1").Range("AB43") = Worksheets("Series").Cells(i, 65)
Worksheets("SeriesData1").Range("AB44") = Worksheets("Series").Cells(i, 66)
'Step 2 :
Application.RUN "'A.xla'!RestartActive"
Application.RUN "'A.xla'!Active"
'Steps 3:
'Output 1
Worksheets("Series").Cells(i, 47) = Worksheets("INPUTOUTPUT").Range("AA87")
Worksheets("Series").Cells(i, 48) = Worksheets("INPUTOUTPUT").Range("AA88")
Worksheets("Series").Cells(i, 49) = Worksheets("INPUTOUTPUT").Range("AA89")
Worksheets("Series").Cells(i, 50) = Worksheets("INPUTOUTPUT").Range("AA90")
'end of code
End Sub
Because of Multiple copy pastes in above code, it is slowing down macro a lot and it is running for large no of dates say like 3 years, it takes hours to complete this code here.
I did not understand completely how your code will make it faster as your code still has large no of lines which will slow down the code a lot.
Here below screenshot of Series Worksheet for your reference. Left side columns are input columns which is step no1 and Step no2 is Output columns on the right side of this worksheet, now.
Please change my existing code for less no of lines using Array and share the code if possible for you.
