See if this is faster.
Sub test()
Dim a, b, i As Long, ii As Long, iii As Long
Dim ws As Worksheet, dic As Object
Set dic = CreateObject("Scripting.Dictionary")
dic.CompareMode = 1
With Sheets("1").Range("a3").CurrentRegion
a = .Value
For i = 2 To UBound(a, 1)
dic(a(i, 1) & Chr(2) & a(i, 2)) = i
Next
For Each ws In Worksheets
If Not ws Is .Parent Then
b = ws.Cells(1).CurrentRegion.Value
For ii = 2 To UBound(b, 1)
If dic.exists(b(ii, 2) & Chr(2) & b(ii, 12)) Then
For iii = 5 To 11
a(dic(b(ii, 2) & Chr(2) & b(ii, 12)), iii - 2) = b(ii, iii)
Next
End If
Next
End If
Next
.Value = a
End With
End Sub
Bookmarks