これを試して:
Sub CopyCells()
Dim rnSource As Range, rnDest As Range, rnTempSource As Range, rnTempDest As Range
Set rnDest = Sheet1.Range("A1", Sheet1.Range("A60000").End(xlUp).Address)
Set rnSource = Sheet2.Range("A1", Sheet2.Range("A60000").End(xlUp).Address)
'Loop through Sheet2 column A, find value in Sheet1 and copy cells across
For Each rnTempSource In rnSource
If rnTempSource.Value <> "" Then
Set rnTempDest = rnDest.Find(rnTempSource.Text) 'Used .text to ignore unusual number format 0001
Sheet1.Range(rnTempDest, rnTempDest.Offset(0, 6)).Value = Sheet2.Range(rnTempSource, rnTempSource.Offset(0, 6)).Value
End If
Next
End Sub