В чем может быть ошибка макроса? Сам макрос работает, но как-то непонятно. Он должен искать каждое значение из соседнего столба (справа) на 2 страничке и найдя ячейку с этим значением вставлять значение из столбца массива в ячейку правее на 2 ячейки. Но он первое значение вставляет вообще неизвестно куда, а остальные вставляет со сдвигом на 1 ячейку вверх.
Sub Macro()
For Each c In Worksheets("Sheet1").Range("AR2:AR31").Cells
a = c.Value
ActiveCell.Offset(0, 1).Activate
b = ActiveCell.Value
Sheets("Sheet2").Select
Range("D14:D52").Select
Selection.Find(What:=b, After:=ActiveCell, LookIn:=xlFormulas, _
LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
MatchCase:=False, SearchFormat:=False).Activate
ActiveCell.Offset(0, 2).Activate
ActiveCell.Value = a
Application.CutCopyMode = False
Sheets("For_tool").Select
c.Select
ActiveCell.Value = b
Next
End Sub