Итак, у меня есть код, который выполняет цикл в Vlookup, и намерение этого состоит в том, чтобы на основе vlookup он перемещал определенные ячейки в другую определенную ячейку, но на другом листе. Код выполняется, но по какой-то причине он не перемещает данные. Я попробовал другой подход в комментариях If и сделал диапазон с назначением копирования, но я начинаю получать объект не опознанные ошибки. Надеясь, что кто-то может увидеть, чего мне не хватает, почему значения не переносятся.
Dim i, j, lastG, lastD As Long
Dim sht, ws As Worksheet
With Application
.ScreenUpdating = False
.EnableEvents = False
.CutCopyMode = False
End With
' find last row
lastG = Sheets("Log").Cells(Rows.Count, "B").End(xlUp).Row
lastD = Sheets("Slide Layout").Cells(Rows.Count, "B").End(xlUp).Offset(1, 0).Row
Set sht = Sheets("Log")
Set ws = Sheets("Slide Layout")
' loop over values in "Log"
For i = 2 To lastG
currVal = ws.Cells(Rows.Count, "J").End(xlUp)
lookupval = Sheets("Log").Cells(i, "B") ' value to find
If lookupval = currVal Then
sht.Cells(i, "F") = ws.Cells(lastD)
End If
Next i
On Error Resume Next
With Application
.ScreenUpdating = True
.EnableEvents = True
.CutCopyMode = True
End With
End Sub