Can also try adding the below along with screenupdating.
Application.Calculation = xlCalculationManual 'then xlCalculationAutomatic at the end
This is an alternate method of moving the data over:
Sub DoThings()
Dim wsN As Worksheet, wsO As Worksheet
Dim lrow As Integer, nrow As Integer, i As Integer, j As Integer, rw As Integer
Dim fndrng As Range
Set wsN = ThisWorkbook.Sheets("NEW")
Set wsO = ThisWorkbook.Sheets("OLD")
lrow = wsN.Range("A:A").Find(what:="*", searchdirection:=xlPrevious).Row
nrow = wsO.Range("A:A").Find(what:="*", searchdirection:=xlPrevious).Row + 1
i = 2
Do While i <= lrow
Set fndrng = wsO.Range("A:A").Find(what:=wsN.Cells(i, 1))
If fndrng Is Nothing Then
rw = nrow
nrow = nrow + 1
Else
rw = fndrng.Row
End If
For j = 1 To 6
wsO.Cells(rw, j) = wsN.Cells(i, j)
Next j
'Enable the two rows below if you want to delete the row from New after it has been
'processed. Remove the ' to un-comment. Also, if you enable them, delete the row below
'them.
' wsN.Rows(i).Delete
' lrow = lrow - 1
i = i + 1 'Delete this if you enable the two commands above
Loop
End Sub
Bookmarks