Option Explicit
Public Sub Co_Khong()
Dim DSach, Tam(), kq(), r As Long, i
DSach = Sheet3.Range("AI6", Sheet3.Range("AK1000000").End(xlUp))
Tam = Sheet2.Range("C3", Sheet2.Range("D1000000").End(xlUp))
With CreateObject("scripting.dictionary")
For r = 1 To UBound(Tam)
.Add Tam(r, 1), Array(Tam(r, 2), 0, 0)
Next r
ReDim Tam(2)
For r = 1 To UBound(DSach)
If DSach(r, 1) <> "" And DSach(r, 2) <> "" Then 'Sửa điều kiện nhập liệu
Tam = .Item(DSach(r, 1))
Tam(1) = Tam(1) + 1
If Left(DSach(r, 3), 1) = "C" Then Tam(2) = Tam(2) + 1
.Item(DSach(r, 1)) = Tam
End If
Next r
Tam = .keys
ReDim kq(1 To .Count + 1, 1 To 4)
For r = 0 To UBound(Tam)
If .Item(Tam(r))(2) > 0 Then 'Sửa điều kiện truy xuất
i = i + 1
kq(i, 1) = Tam(r)
kq(i, 2) = .Item(Tam(r))(0)
kq(i, 3) = .Item(Tam(r))(1)
kq(i, 4) = .Item(Tam(r))(2)
kq(.Count + 1, 3) = kq(.Count + 1, 3) + .Item(Tam(r))(1)
kq(.Count + 1, 4) = kq(.Count + 1, 4) + .Item(Tam(r))(2)
End If
Next r
kq(i + 1, 1) = "Tong"
kq(i + 1, 3) = kq(.Count + 1, 3)
kq(i + 1, 4) = kq(.Count + 1, 4)
End With
Sheet1.Range("A11", "H" & Sheet1.Range("B1000000").End(xlUp).Row).Clear
Sheet1.Range("B11").Resize(i + 1, 4) = kq
Sheet1.Range("A11").Resize(i) = "=row()-10"
Sheet1.Range("G11").Resize(i) = "=RC[-2]*RC[-1]"
End Sub