Sub JustTest()
Dim d As New Dictionary, I&, lngR&, j&, lngC&
Dim Arr, Ar&(1 To 10, 1 To 11)
With Sheet2
Arr = .[c2:m2]
For I = 1 To UBound(Arr, 2)
d.Add Arr(1, I), I
Next I
Arr = .[b4:b8]
For I = 1 To UBound(Arr)
d.Add Arr(I, 1) & "R", I
Next I
End With
With Sheet1
Arr = .Range("b2:g" & .Cells(.Rows.Count, 2).End(3).Row).Value
End With
For I = 1 To UBound(Arr)
lngR = IIf(Arr(I, 6) = "Æóòμ", 0, 5) + d(Left(Arr(I, 5), 2) & "R")
For j = 2 To 4
lngC = d(Arr(I, j))
Ar(lngR, lngC) = Ar(lngR, lngC) + Arr(I, 1)
Next j
Next I
With Sheet2
With .[c4:m13]
.ClearContents
.Value = Ar
End With
End With
Set d = Nothing
End Sub
看下合你要求不?