miko_080888
Thành viên chính thức


- Tham gia
- 25/7/10
- Bài viết
- 55
- Được thích
- 29
- Nghề nghiệp
- Formosa Hà Tĩnh
bạn dùng chức năng Remove Duplicates trong Data sẻ có kết quả như bạn mong muốnGiả sử mình có bảng excel như sau, mình muốn lọc tất cả các số phiếu giống nhau chỉ lấy 1 phiếu thì làm thế nào. Giúp mình với nha mọi người
Bạn dùng công thức này để lọc nhé :
Kết thúc bằng Ctrl+shift+EnterPHP:=INDEX($A$2:$A$10;MATCH(1;(COUNTIF($C$1:C1;$A$2:$A$10)=0)*(COUNTIF($A$2:$A$10;$A$2:$A$10)>1);0))
Xem file đính kèm :
Ban ui, sao minh lam lai nhu ban ma khong duoc nhi? ban co the giai thich lai cong thuc nay cho minh duoc khong? Cam on ban nhieu nha
=INDEX($A$2:$A$10;MATCH(1;(COUNTIF($C$1:C1;$A$2:$A$10)=0)*(COUNTIF($A$2:$A$10;$A$2:$A$10)>1);0))
Đây là yêu cầu trích lọc danh sách duy nhất, xuất hiện từ 2 lần trở lên.Ban ui, sao minh lam lai nhu ban ma khong duoc nhi? ban co the giai thich lai cong thuc nay cho minh duoc khong? Cam on ban nhieu nha
Bắt đầu từ cái này :PHP:=INDEX($A$2:$A$10;MATCH(1;(COUNTIF($C$1:C1;$A$2:$A$10)=0)*(COUNTIF($A$2:$A$10;$A$2:$A$10)>1);0))
=COUNTIF($C$1:C1;$A$2:$A$10)=0
{0;0;0;0;0;0;0;0;0} = 0
Trả về mảng này : {TRUE;TRUE;TRUE;TRUE;TRUE;TRUE;TRUE;TRUE;TRUE}
=COUNTIF($A$2:$A$10;$A$2:$A$10)>1 :
{2;2;1;2;2;2;2;2;2} > 1
Trả về mảng này : {TRUE;TRUE;FALSE;TRUE;TRUE;TRUE;TRUE;TRUE;TRUE}
=(COUNTIF($C$1:C1;$A$2:$A$10)=0)*(COUNTIF($A$2:$A$10;$A$2:$A$10)>1) trở thành :
= {TRUE;TRUE;TRUE;TRUE;TRUE;TRUE;TRUE;TRUE;TRUE}* {TRUE;TRUE;FALSE;TRUE;TRUE;TRUE;TRUE;TRUE;TRUE}
= {1;1;0;1;1;1;1;1;1}
Tiếp theo :
Match(1; {1;1;0;1;1;1;1;1;1};0)
Sẽ trả về vị trí số 1 đầu tiên.
= Index($A$2:$A$10;1)
= Index({"01";"01";"05";"06";"06";"03";"03";"04";"04"};1) = "01"
Công thức này là của hoamattroicoi, mình chỉ xen vô thôi.Bạn ơi, mình làm theo cách này của hai ban bebo0219999 va hoamatroicoi nhưng mà không ra kết quả. Bạn xem hộ mình với.
Công thức này là của hoamattroicoi, mình chỉ xen vô thôi.
Bạn đọc kỹ công thức mẫu, cần phải có 1 dòng trống ở trên đầu để "thở" chứ?
Dùng Vlookup thôi bạn ạ!Ah, mình làm được rồi, đa tạ đa tạ.Mình còn có một thắc mắc nữa là mình muốn lọc ra các số phiếu đó cùng với các biển số xe tương ứng thì làm thế nào nhỉ
=VLOOKUP(C2;$A$2:$B$10;2;0)
Mở rộng: Nếu muốn liệt kê danh sách phiếu: bỏ countif thứ 2 ra khỏi công thức, hoặc sửa điều kiện lại là >0Ah, mình làm được rồi, đa tạ đa tạ.Mình còn có một thắc mắc nữa là mình muốn lọc ra các số phiếu đó cùng với các biển số xe tương ứng thì làm thế nào nhỉ
Nếu chỉ bỏ countif thứ 2 ra thì chưa đủ anh ạ, theo em phải chỉnh lại công thức từ thế này:Mở rộng: Nếu muốn liệt kê danh sách phiếu: bỏ countif thứ 2 ra khỏi công thức, hoặc sửa điều kiện lại là >0
=INDEX($A$2:$A$10;MATCH(1;(COUNTIF($C$1:C1;$A$2:$A$10)=0)*(COUNTIF($A$2:$A$10;$A$2:$A$10)>1);0))
=INDEX($A$2:$A$10;MATCH(0;COUNTIF($C$1:C1;$A$2:$A$10);0))
=INDEX($A$2:$A$10;MATCH(0;($A$2:$A$10="")+(COUNTIF($C$1:C1;$A$2:$A$10));0))
Tất nhiên với dữ liệu lớn, dùng công thức không phải là giải pháp tối ưu. Nhưng không phải ai cũng biết, sử dụng và hiểu tường tận về VBA.Cách lọc này cũng là một cách độc đáo.
Nhưng khi số bản ghi tăng lên hàng trăm vạn khi đó có thể lọc được không? các giá trị đó xuất hiện không phải giống nhau số lần.
Cái này có thể lọc được dạng text không?
Rất mong mọi thành viên phát triển!