RWayneH
asked on
Procedure going thru too many rows of data
In the following code, the MaxRow is huge and causes the process to run a while. How would I edit the following procedure to instead of using MaxRow, to only run for 500 lines? or as long as there is data in column M? The file that it is failing on in attached. When running this procedure the MaxRow value gets huge, and should need to get that big. This adds significant runtime. Is there a way to fix this?
Sub DelOOETranslations() 'Assumes that oldest or OOE are first
Dim WS As Worksheet
Dim MaxRow As Long, I As Long
Dim ThisDate As Date
Set WS = ActiveSheet
MaxRow = LastRow
I = 6
Do
'---> Check for Cell if Date and Affect to ThisDate
If Len(WS.Cells(I, "D")) = 20 And Mid(WS.Cells(I, "D"), 3, 1) = "/" Then
ThisDate = DateValue(Left(WS.Cells(I, "D"), 10))
End If
'---> Test if Date captured < now then delete or else increment counter go next line
If ThisDate < DateValue(Now) Then
WS.Cells(I, "A").EntireRow.Delete
MaxRow = MaxRow - 1
Else
I = I + 1
End If
Loop Until I > MaxRow
'---> Advise results to user
'MsgBox ("All date prior to " & DateValue(Now) & " have been deleted with their coresponding rows successfully.")
End Sub
Translation.xlsx
ASKER CERTIFIED SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
ASKER