I have a code... and I am trying to use it with a different file.

The files is set up the same, the code has been unedited, but it's not working

Sub findAndReplace()
Dim ws1 As Worksheet
Dim ws2 As Worksheet
Dim searchFor As String
Dim searchCol As Range

Set ws1 = Sheets("SBK") 'sheet for which we look in column A
Set ws2 = Sheets("Sheet1") 'sheet we try to match with column E

'last row on the sheet with the updated information
lastRow = ws1.Cells(ws1.Rows.Count, 1).End(xlUp).Row
'column E on sheet we are going to update
Set searchCol = ws2.Columns(5)

'work with one row at a time; i is the row number
For i = 1 To lastRow
'read the entry in column A for this row
searchFor = ws1.Range("A" & i)
'attempt to find a match
matchRow = 0
On Error Resume Next
matchRow = Application.WorksheetFunction.Match(searchFor, searchCol, 0)
If matchRow > 0 Then
'if we got here, we found a match
ws2.Range("D" & matchRow) = ws1.Range("D" & i)
ws2.Range("E" & matchRow) = ws1.Range("E" & i)
ws2.Range("F" & matchRow) = ws1.Range("F" & i)
ws2.Range("G" & matchRow) = ws1.Range("G" & i)
End If
Next i

End Sub


What it should do:
I want it to look in SBK at column A and match it to column E of Sheet1. Then copy collumns DEFG from SBK to DEFG of sheet1.... Is there some reason it's not doing it?