I have the following code kindly supplied to me by someone else and I'd like to know if anyone can suggest any ways to speed up the running of it. It currently takes about 4 minutes to run (there are about 5000 cells to loop through)
Basically it looks for a value in Col C - works out the number of rows to fill up by searching a range in Col D - then copies value in Col C up by that number of rows.
Any help would be appreciated![]()
Sub Fill_In_Reason() Dim lastRow As Long Dim myRow As Long Dim myCel As String Dim myRng As String lastRow = Range("C65530").End(xlUp).Row For Each cell In Range("C2:C" & lastRow).SpecialCells(xlCellTypeConstants, 23) myCel = cell.Address Debug.Print cell.Address myRow = Range(myCel).Row With Range("D2:D" & myRow).SpecialCells(xlCellTypeConstants) myRng = Range("D2:D" & lastRow).SpecialCells(xlCellTypeConstants).Areas(.Areas.Count).Offset(0, -1).Address Range(myCel).Copy Range(myRng) End With Next cell End Sub
Regards
Seamus
Bookmarks