Đếm số lượng các giá trị khác nhau

Liên hệ QC

thuyloitienlu

Thành viên chính thức
Tham gia
17/4/08
Bài viết
58
Được thích
0
Các bạn giúp tôi lập hàm đếm số lượng danh sách Họ tên người và địa chỉ xuất hiện trong 2 cột dữ liệu. Cụ thể tôi có 1 cột là "Họ và tên" và 1 cột khác là "Địa chỉ", các tên và địa chỉ có thể giống nhau, hoặc bỏ trống. Tôi muốn lập hàm để đếm số lượng người xuất hiện(không trùng nhau cả họ tên và địa chỉ) trong bảng danh sách.
 
Các bạn giúp tôi lập hàm đếm số lượng danh sách Họ tên người và địa chỉ xuất hiện trong 2 cột dữ liệu. Cụ thể tôi có 1 cột là "Họ và tên" và 1 cột khác là "Địa chỉ", các tên và địa chỉ có thể giống nhau, hoặc bỏ trống. Tôi muốn lập hàm để đếm số lượng người xuất hiện(không trùng nhau cả họ tên và địa chỉ) trong bảng danh sách.

Mình gửi bạn VD đơn giản, vì gấp quá nên bạn xem và chỉnh sửa lại công thức cho linh đông hơn nha.
 

File đính kèm

  • vd ve dem danh sach duy nhat.xls
    15 KB · Đọc: 129
Upvote 0
người A có địa chỉ là XX, người B có địa chỉ XX thì đếm là 2 người. Bạn có thể viết bằng code được không ?
 
Upvote 0
người A có địa chỉ là XX, người B có địa chỉ XX thì đếm là 2 người. Bạn có thể viết bằng code được không ?

Ý bạn là viết bằng VBA à, sao không dùng công thức cho đơn giản như file mình đã gửi ấy.
Nếu cần mình sẽ viết
 
Upvote 0
Upvote 0
Tôi đã dùng hàm của bạn Hoangdanh282 nhưng nó vẫn đếm cả ô trắng là 1 người. Các bạn giúp tôi xử lý bỏ qua ô trống (không đếm), viết bằng VBA thì càng tốt (Tôi muốn làm tự động vì tôi có nhiều file bảng tính cần xử lý).
 
Upvote 0
Muốn có hàm thì viết cho hàm, nè!

PHP:
Option Explicit
Function Dem0Trung(Rng As Range)
 Dim Clls As Range
 Dim lRow As Long, jJ As Long, Zz As Long
 
 If Rng.Columns.Count = 1 Then Set Rng = Rng.Resize(, 2)
 lRow = Rng.Rows.Count
 For jJ = 1 To lRow
   With Cells(jJ, 1)
      For Zz = jJ + 1 To lRow
      
         If (.Value = Cells(Zz, 1) And .Offset(, 1) = _
            Cells(Zz, 2)) Then Exit For
      
      Next Zz
      If .Value <> "" And Zz > lRow Then Dem0Trung = 1 + Dem0Trung
      
   End With
 Next jJ
 Dem0Trung = Dem0Trung
End Function

Chú ý khi sử dụng: Nếu dữ liệu của bạn có phần tiêu đề là A1:B1 & có đến dòng 35 thì cú pháp hàm sẽ chỉ là:
=Dem0Trung (A2:B35)
hay =Dem0Trung(A2:A5)
 
Upvote 0
Tôi đã dùng hàm của bạn Hoangdanh282 nhưng nó vẫn đếm cả ô trắng là 1 người. Các bạn giúp tôi xử lý bỏ qua ô trống (không đếm), viết bằng VBA thì càng tốt (Tôi muốn làm tự động vì tôi có nhiều file bảng tính cần xử lý).

BẠn sửa lại công thức trong ô E1
PHP:
=SUMPRODUCT(--(MATCH($A$2:$A$20&$B$2:$B$20,$A$2:$A$20&$B$2:$B$20,0)=ROW($A$1:$A$19))*($A$2:$A$20<>""))
 
Upvote 0
Đếm số lượng các giá trị

Cảm ơn các bạn đã cho nhiều phương pháp giải bài toán. Tôi có số liệu cụ thể các bạn xem và xử lý cho tôi nhé. Nếu làm VBA thì càng tốt. Tự động lọc ra bảng kết quả. Có file kèm theo, các bạn xem giúp.
 

File đính kèm

  • locten.rar
    93.2 KB · Đọc: 69
Lần chỉnh sửa cuối:
Upvote 0
Cái này hơi khó đấy, làm 1 UHF thì hơi khó. Có thể làm 1 Sub theo hướng Advance Filter theo cột Ten&DiaChi
Mà tại sao lại tự làm khó mình, bỏ hết dòng trống đi.
 
Upvote 0
Mình muốn giữ nguyên dữ liệu nguồn, bạn xem thử file dữ liệu giúp mình nhé
 
Upvote 0
Web KT
Back
Top Bottom