T
thanhphuongvip
Guest
Xin chào mọi người,
Mình mới học VBA, thấy nhiều code có viết sử dụng dòng code CreateObject("Scripting.Dictionary"), ví dụ trong code tính SUMIF này
Mình muốn biết cái này có tác dụng gì và sử dụng trong trường hợp nào? Hoặc có tài liệu nói về này thì cho mình xin cũng đc.
Mình có đọc trên goole rồi nhưng thật sự chưa hiểu lắm.
Xin cảm ơn!
Mình mới học VBA, thấy nhiều code có viết sử dụng dòng code CreateObject("Scripting.Dictionary"), ví dụ trong code tính SUMIF này
Mã:
Public Sub GPE()
Dim Dic As Object, sArr(), dArr(), I As Long, Tem As String
Set Dic = CreateObject("Scripting.Dictionary")
sArr = Range([B5], [B5].End(xlDown)).Resize(, 5).Value2
ReDim dArr(1 To UBound(sArr, 1), 1 To 1)
For I = 1 To UBound(sArr, 1)
Tem = sArr(I, 1)
If Not Dic.Exists(Tem) Then
Dic.Add Tem, sArr(I, 5)
Else
Dic.Item(Tem) = Dic.Item(Tem) + sArr(I, 5)
End If
Next I
For I = 1 To UBound(sArr, 1)
dArr(I, 1) = Dic.Item(sArr(I, 1))
Next I
[H5].Resize(I - 1) = dArr
Set Dic = Nothing
End Sub
Mình có đọc trên goole rồi nhưng thật sự chưa hiểu lắm.
Xin cảm ơn!