Hướng dẫn hàm đếm có nhiều điều kiện (không đếm những MSKH trùng)

Liên hệ QC

saobekhonglac

Thành viên mới
Tham gia
1/11/08
Bài viết
1,565
Được thích
1,452
Giới tính
Nam
Dear all.
Mình có file excel bao gồm MSKH (cột A), THANG (cột B), HTKH (cột C), BU (cột D),…. Từ I2 đến K5 mình muốn dùng công thức để đếm số lượng khách hàng phát sinh thỏa các điều kiện BU, THANG, HTKH (sau cho 1 khách hàng chỉ đếm 1 lần trong tháng). ACE xem giúp mình với.
Thanks all.
 

File đính kèm

  • Ham dem co nhieu dieu kien.xlsx
    9.8 KB · Đọc: 33
Hix, sao không có ai giúp mình hết vậy ta.
 
dear all.
Mình có file excel bao gồm mskh (cột a), thang (cột b), htkh (cột c), bu (cột d),…. Từ i2 đến k5 mình muốn dùng công thức để đếm số lượng khách hàng phát sinh thỏa các điều kiện bu, thang, htkh (sau cho 1 khách hàng chỉ đếm 1 lần trong tháng). Ace xem giúp mình với.
Thanks all.

Mã:
 i2 =if(countifs($d$2:$d$11,$g2,$b$2:$b$11,$h2,$c$2:$c$11,i$1)>=1,1,0)
 
Công thức này chưa đúng vì tháng 1 có 4 khách hàng nhưng công thức kéo ra chỉ có 1. Bạn xem lại giúp mình.

Thanks.

Tại vì tôi đọc mà không để ý tới vụ khách hàng trùng nên cứ tưởng 3 điều kiện nếu ra >=1 thì lấy là 1 hết.
Vậy xài cái này.--=0--=0--=0--=0--=0--=0

Mã:
  I2 =ROUND(IF(AND(SUMPRODUCT(($A$2:$A$11<>"")/COUNTIF($A$2:$A$11,$A$2:$A$11&"")*
($B$2:$B$11=$H2)*($C$2:$C$11=I$1)*($D$2:$D$11=$G2))<0.5,SUMPRODUCT(($A$2:$A$11<>"")/
COUNTIF($A$2:$A$11,$A$2:$A$11)*($B$2:$B$11=$H2)*($C$2:$C$11=I$1)*($D$2:$D$11=$G2))>0),1,SUMPRODUCT(($A$2:$A$11<>"")/
COUNTIF($A$2:$A$11,$A$2:$A$11)*($B$2:$B$11=$H2)*($C$2:$C$11=I$1)*($D$2:$D$11=$G2))),0)
 
Lần chỉnh sửa cuối:
Công thức ok rồi, nhưng dữ liệu của mình hơn 50.000 dòng, làm công thức xong enter rồi đi ăn sáng uống cà phê xong mà nó vẫn chưa chạy xong. hix.

Tại vì tôi đọc mà không để ý tới vụ khách hàng trùng nên cứ tưởng 3 điều kiện nếu ra >=1 thì lấy là 1 hết.
Vậy xài cái này.--=0--=0--=0--=0--=0--=0

Mã:
  I2 =ROUND(IF(AND(SUMPRODUCT(($A$2:$A$11<>"")/COUNTIF($A$2:$A$11,$A$2:$A$11&"")*
($B$2:$B$11=$H2)*($C$2:$C$11=I$1)*($D$2:$D$11=$G2))<0.5,SUMPRODUCT(($A$2:$A$11<>"")/
COUNTIF($A$2:$A$11,$A$2:$A$11)*($B$2:$B$11=$H2)*($C$2:$C$11=I$1)*($D$2:$D$11=$G2))>0),1,SUMPRODUCT(($A$2:$A$11<>"")/
COUNTIF($A$2:$A$11,$A$2:$A$11)*($B$2:$B$11=$H2)*($C$2:$C$11=I$1)*($D$2:$D$11=$G2))),0)
 
cần chi 50000 dòng, chi cần hơn 10000 dòng mà dùng sumproduct cũng đi chứ đừng nói là 50 ngàn
 
Công thức ok rồi, nhưng dữ liệu của mình hơn 50.000 dòng, làm công thức xong enter rồi đi ăn sáng uống cà phê xong mà nó vẫn chưa chạy xong. hix.

số liệu nhiều như vậy, thì

* hoặc là VBA

* hoặc giải pháp hay là: Dùng pivot table - nếu có đ.k thử đi dự hội thảo http://www.giaiphapexcel.com/forum/...ble-8h-00-ngày-19-04-2015&p=641157#post641157
chắc sẽ hiểu hơn về pivot table
 
Pivot thì ok rồi, mình muốn dùng công thức để khi dán dữ liệu vào thì số liệu tự nhảy, còn Pivot thì phải refresh lại khi cập nhật dữ liệu mới.

số liệu nhiều như vậy, thì

* hoặc là VBA

* hoặc giải pháp hay là: Dùng pivot table - nếu có đ.k thử đi dự hội thảo http://www.giaiphapexcel.com/forum/...ble-8h-00-ngày-19-04-2015&p=641157#post641157
chắc sẽ hiểu hơn về pivot table
 
Pivot thì ok rồi, mình muốn dùng công thức để khi dán dữ liệu vào thì số liệu tự nhảy, còn Pivot thì phải refresh lại khi cập nhật dữ liệu mới.
Số liệu nhiều quá có thể dùng VBA, để pivot table tự cập nhật ko cần refresh, bạn có thể dùng sự kiện sau
PHP:
Private Sub Worksheet_Activate()
    PivotTables(1).PivotCache.Refresh
End Sub
Chép thẳng sự kiện vào sheet chứa pivot tables
 

File đính kèm

  • Ham dem co nhieu dieu kien.rar
    17.1 KB · Đọc: 15
Đừng nói là bấm nút cũng không chịu nghe.

Bấm Refresh cũng 1 nút , nên chắc cái này 1 nút cũng khó chịu đây.

@chủ topic: Tùy lựa chọn yêu cầu mà sao cho phù hợp nhất. Đôi khi uống cốc cafe 30 phút nâng lên đặt xuống nhiều lần thì vẫn vô tư, nhưng bấm 1 nút trên máy tính hay chờ 1 giây thì thấy lâu.
 
Web KT
Back
Top Bottom