Giúp công thức hàm sum cộng không trùng (1 người xem)

Liên hệ QC

Người dùng đang xem chủ đề này

buctoc147

Thành viên bị đình chỉ hoạt động
Thành viên bị đình chỉ hoạt động
Tham gia
26/4/21
Bài viết
13
Được thích
-2
Chào GPE !
Mình cần 1 hàm cộng sum với điều kiện là không trùng cột thời gian. Nếu trùng lấy dòng trên cùng. Xin cảm ơn.

1619424410805.png
 
Chào GPE !
Mình cần 1 hàm cộng sum với điều kiện là không trùng cột thời gian. Nếu trùng lấy dòng trên cùng. Xin cảm ơn.

View attachment 257668
Bài bạn sẽ được giải đáp nhanh hơn khi bạn gửi file có dữ liệu sẵn để mọi người chỉ việc tải về, viết công thức rồi tải lên lại thôi.
Còn này bị chậm là do mọi người "ngại" tạo dữ liệu để làm "bài" dùm bạn á.

Bạn đợi mình xíu, mình đang tạo dữ liệu làm xem xem được hôn nhé.
 
thử thế này xem, chưa dùng hàm này bao giờ
1619429515833.png
Mã:
=SUMPRODUCT(--(FREQUENCY(MATCH($E$3:$E$15;E3:E15;0);ROW($A$1:$A$12))>0)*($F$3:$F$15))
 
Thử
Mã:
=SUMPRODUCT((MATCH(C5:C14,C5:C14,0)=ROW(1:10))*D5:D14)
Em thử dùm thớt được luôn anh ơi. Ngắn gọn, hay quá xá! :D
Em không hiểu sao anh nghĩ ra được giải thuật đoạn Match...=Row... luôn, hay ghê. Vậy là vùng Match có bao nhiêu dòng thì bên mảng Row sẽ cho chạy từ 1 đến bấy nhiêu. Em thua, hôm qua giờ xài Sumproduct+Countif+Subtotal mà không ra quài, không hiểu. :P

1619484088576.png
 
Em thử dùm thớt được luôn anh ơi. Ngắn gọn, hay quá xá! :D
Em không hiểu sao anh nghĩ ra được giải thuật đoạn Match...=Row... luôn, hay ghê. Vậy là vùng Match có bao nhiêu dòng thì bên mảng Row sẽ cho chạy từ 1 đến bấy nhiêu. Em thua, hôm qua giờ xài Sumproduct+Countif+Subtotal mà không ra quài, không hiểu. :p

View attachment 257690
Cộng không trùng cách làm tương tự đếm không trùng có nhiều trên diễn đàn
 
Nãy là em có thử luôn rồi á, nó cũng ra 0 á anh.
Nhưng em có đọc đâu đó là hàm SUM đâu cần CSE đâu anh. Nó là hàm mảng sẵn rồi đúng không?!
1619487323564.png
Cái em nói là SUMPRODUCT không phải sum, nếu thay sum bằng SUMPRODUCT thì không cần CSE
Bài đã được tự động gộp:

nhìn lại công thức trong điều kiện <> là đang lệch một dòng đấy không phải cùng dòng đâu C4:C13<>C5:C14
 
nhìn lại công thức trong điều kiện <> là đang lệch một dòng đấy không phải cùng dòng đâu C4:C13<>C5:C14
Ơ, bài #9 em copy y chang công thức của anh @dazkangel luôn á, lệch 1 dòng. Ra 0 á anh.

Mà thớt đâu rồi anh nhỉ? Bứt tốc mất tăm hơi rồi chăng? Nhanh quá. :D
 
Nếu dữ liệu trống 1 dòng thì nó hiện Name. cái này chắc em hỏi bên Code quá

View attachment 257734
Bạn tham khảo thêm vba:
Mã:
Option Explicit
Public Function sum_sum(rng As Range)
    Dim dic As Scripting.Dictionary, sKey As Variant, r As Long, k As Long, a
    Set dic = New Scripting.Dictionary: a = rng.Value2
    For r = 1 To UBound(a, 1)
        sKey = a(r, 1)
        If Not dic.Exists(sKey) And Not IsEmpty(sKey) Then
            dic.Add sKey, a(r, 2)
            sum_sum = sum_sum + a(r, 2)
        End If
    Next r
End Function

Công thức:
Mã:
F5=sum_sum(C5:D13)
 
Nếu dữ liệu trống 1 dòng thì nó hiện Name. cái này chắc em hỏi bên Code quá

View attachment 257734
Hỏi nhưng không đưa file kèm, anh em giúp rồi lại trở quẻ thêm thắt điều nọ kia.

Tôi có công thức cũng gọn gàng thôi, loại bỏ trùng lắp và chấp bạn có thêm 100 dòng trống nữa cũng cộng ra kết quả, nhưng tôi chỉ dành công thức này cho mấy anh em cần tham khảo học hỏi chân thành thôi, vì tôi thấy bạn chả thiết đến nữa.

Vậy nha.
 
Web KT

Bài viết mới nhất

Back
Top Bottom