Nhờ giúp đỡ code sumifs

Chia sẻ bởi:hands
★★★★★
Quảng cáo

Chào các bác,

Em đang tìm hiểu về dic trong VBA, qua diễn đàn em có tham khảo được 1 đoạn code thay thế cho hàm sumif, tuy nhiên với trường hợp dữ liệu lặp lại thì nó lại chưa trả về kết quả.
Kính nhờ các bác giúp em sửa đoạn code để nó có thể chạy được ạ
Chi tiết em có gửi trong file đính kèm
Em cảm ơn ạ!

Tham khảo thêm khi chờ các thành viên khác giúp nữa. Mà bạn có thể bỏ chữ Nhờ trong tiêu đề đi được không?

Sub ABC()
    Dim Dic As Object, sArr(), Res(), i&, j&, k&
    Set Dic = CreateObject("Scripting.dictionary")
    With Sheets("Sheet1")
        sArr = .Range("B3:D" & .Range("B" & Rows.Count).End(3).Row).Value
        For i = 1 To UBound(sArr)
            Dic(sArr(i, 1)) = Dic(sArr(i, 1)) + sArr(i, 2)
        Next
    End With
    With Sheets("Sheet2")
        sArr = .Range("B3:B" & .Range("B" & Rows.Count).End(3).Row).Value
        ReDim Res(1 To UBound(sArr), 1 To 1)
        For i = 1 To UBound(sArr)
            If Dic.exists(sArr(i, 1)) = True Then
                Res(i, 1) = Dic.Item(sArr(i, 1))
            End If
        Next
        Sheets("Sheet2").Range("D3").Resize(UBound(Res), 1) = Res
    End With
End Sub

www.giaiphapexcel.com/diendan/threads/nh%E1%BB%9D-gi%C3%BAp-%C4%91%E1%BB%A1-code-sumifs.165344/

Kỹ năng giải quyết vấn đề hiệu quả
Khóa học SprinGO phù hợp

Kỹ năng giải quyết vấn đề hiệu quả

Mô tả Nội dung Đánh giá Tài nguyên KỸ NĂNG GIẢI QUYẾT VẤN ĐỀ HIỆU QUẢHiểu đúng vấn đề là một nửa của giải...

Xem khóa học
★★★★★ 5 ★ 1 👤 5 ▥ 0
Quảng cáo

Bạn nên đọc

Bình luận

Quảng cáo

Cũ vẫn chất

Xem thêm