Gọi là góp chút cho vui, code chạy cũng ổn, tuy nhiên vẫn rất rất cần anh chi em góp ý thêm
Sub ABC()
Dim Arr(), KQ()
Dim i&, t&, k&, d&
Dim TONG As Variant
With Sheets("CHI TIET")
d = .Range("B" & .Rows.Count).End(xlUp).Row
MsgBox d
Arr = .Range("B2:M" & d).Value
ReDim KQ(1 To UBound(Arr), 1 To 6)
TU = Sheets("REPORT LOC").[B2]
DEN = Sheets("REPORT LOC").[E2]
If TU = Empty And DEN = Empy Then Exit Sub
If TU = Empty Then TU = .[F2]
If DEN = Empty Then DEN = .Range("F" & d - 1)
MsgBox DEN
For i = 1 To UBound(Arr)
If Arr(i, 5) >= TU And Arr(i, 5) <= DEN Then
t = t + 1
KQ(t, 1) = t
KQ(t, 2) = Arr(i, 12)
KQ(t, 3) = Arr(i, 4)
KQ(t, 4) = Arr(i, 10)
TONG = TONG + Arr(i, 10)
KQ(t, 5) = Arr(i, 5)
KQ(t, 6) = Arr(i, 11)
End If
Next i
If t > 0 Then
Sheets("REPORT LOC").Range("A6:M1000000").ClearContents
Sheets("REPORT LOC").[A6].Resize(t, 6) = KQ
Sheets("REPORT LOC").[H2] = t
Sheets("REPORT LOC").[L2] = TONG
End If
End With
MsgBox "XONG"
End Sub
Nếu ô B2= rỗng thì từ ngày= ngày đầu tiên của sheets CHITIET
Nếu ô E2= rỗng thì Đến ngày= ngày cuối cùng của sheets CHITIET.
Bạn hãy thử thay đổi ô B2 và e2 sh CHITIET và RUN nhé.