أخى الفاضل
سيكون الكود كالآتى
Sub ragab()
Dim arr() As Double
Application.ScreenUpdating = False
On Error Resume Next
x = ActiveWorkbook.Name
WB = ActiveWorkbook.Path & "\" & "كنترول نصف العام" & ".xls"
Workbooks.Open Filename:=WB
LR = ActiveWorkbook.Sheets("رصد اول").Cells(Rows.Count, 3).End(xlUp).Row
ReDim arr(1 To LR - 12, 1 To 4)
For i = 13 To LR
ii = ii + 1
arr(ii, 1) = Cells(i, "H")
arr(ii, 2) = Cells(i, "M")
arr(ii, 3) = Cells(i, "R")
arr(ii, 4) = Cells(i, "W")
Next
ActiveWindow.Close
T = 1
For R = 13 To LR
Workbooks(x).Sheets("رصد اول").Cells(R, "D") = arr(T, 1)
Workbooks(x).Sheets("رصد اول").Cells(R, "J") = arr(T, 2)
Workbooks(x).Sheets("رصد اول").Cells(R, "P") = arr(T, 3)
Workbooks(x).Sheets("رصد اول").Cells(R, "V") = arr(T, 4)
T = T + 1
Next
Application.ScreenUpdating = True
End Sub