Lọc tất cả 1 lọai dữ liệu thỏa nhiều điều kiện

  • Thread starter mcnhan
  • Ngày gửi
M

mcnhan

Thành viên sơ cấp
3/6/05
10
0
0
41
SG
#1
Mong các bạn giúp tôi tìm hàm để làm công việc sau:

Tôi có 1 sheet gồm 3 cột Số phiếu, Tên KH, Lọai hàng hóa. (3 thông số)
Bây giờ tôi muốn lọc ra sheet mới tất cả các dòng lọai hàng hóa tương ứng với 1 Số phiếu VÀ 1 tên KH đã định.

Ví dụ: Bảng tính có các cột data: số phiếu là 1,2,2,3,4,4 tên khách hàng là A,B,B,C,D,D; Loại hàng hóa là a,b,c,d,e,f (2 trong 3 thông số có thể trùng nhau).
Sau khi lọc data để lấy tất cả Loại hàng hóa của số phiếu 2 VÀ tên KH B ta có kết quả hiện trong bảng tính mới: Số phiếu là 2,2; tên KH B,B; loại hàng là b,c
Tôi phải thiết lập hàm như thế nào? Xin giúp đỡ.
 
N

NgânGiang

Cố lên! Cố lên...
10/5/05
202
0
0
16
Trong Mây mù
www.baominh.com.vn
#2
Việc của bạn có thể làm như sau:
1. AutoFilter
Quét toàn bộ vùng dữ liệu
Chọn theo menu: Data\Filter\AutoFilter
Sau đó lọc cột số phiếu theo nhu cầu, KH theo nhu cầu rồi chọn copy để chép ra sheet mới.
2. Advanced Filter (Cách này có vẻ phù hợp với bạn)
Gõ thêm một vùng nữa gọi là tiêu chuẩn lọc dữ liệu có 2: Cột số phiếu có dữ liệu là 2, cột tên KH có dữ liệu là B
Chọn cả vùng dữ liệu gốc và vào menu: Data\Filter\Advanced Filter...
Chọn Options: Copy to another location
List range: Địa chỉ Vùng dữ liệu gốc đã được đưa vào
Criteria range: Bạn quét vùng điều kiện
Copy to: Bạn chọn vùng muốn copy tới
Bước tiếp theo bạn mới copy ra sheet mới
3. Ghi lại các bước đã làm
Khi làm tay thuần thục bạn có thể ghi lại động tác của mình qua menu
Tools\Macro\Record new macro...
Sau đó sửa lại 1 chút macro vừa ghi

Chúc bạn thành công
 
M

mcnhan

Thành viên sơ cấp
3/6/05
10
0
0
41
SG
#3
Rất cám ơn bạn Ngân giang. Tôi đã theo hướng dẫn của bạn và thành công.Thanks
 
H

handung107

Thành viên thân thiết
28/8/04
576
13
0
VN
www.giaiphapexcel.com
#4
Nếu không dùng Advanced Filter, mà bạn muốn thiết kế sẵn để trích lọc tự động, bạn có thể thực hiện như sau :
Vùng lọc dữ liệu có 2 Cell, có thể thiết lập ComboBox để dễ tạo những số phiếu khác nhau và KH khác nhau. Đặt tên Cell điều kiện là Sophieu và KH
Dùng các hàm : MATCH, OFFSET và INDEX để thiết lập chế độ tự động trích rút dữ liệu bằng các hàm
1/ Tạo cột phụ xác định điều kiện lọc dữ liệu bằng các hàm IF, OR, AND : Ta có cột MaPhieu, MaKH, MaMH. Nếu thoả mãn điều kiện, ta đánh dấu "X", nếu không để trống
Td : =IF(AND(MaPhieu=Sophieu,MaKH=KH),"X","")
Sau đó, đặt tên cho cột đánh dấu này là GhiSo
2/ Xác định vị trí các hàng được đánh dấu (thoả mãn đK) bằng hàm MATCH :
Qua Sheet khác, Sheet mà bạn muốn đặt dữ liệu trích lọc từ dữ liệu nguồn.
Giả sử bảng dữ liệu của bạn bắt đầu từ hàng thứ 5 (A5:B20). Ta dùng cột D để cài công thức sau :
D5 : =MATCH("X",Ghiso,0)
D6 : =MATCH("X",OFFSET(Ghiso,D5,0),0)+D5.
Chép công thức xuống đến hàng thứ 20.
3/ Cài công thức vào các cột để dữ liệu sẽ thể hiện nếu thoả mãn điều kiện lọc :
Cột A (Maphieu) :
A5 = IF(ISNA($D5),"",INDEX(MaPhieu,$D5,0))
B5 = IF(ISNA($D5),"",INDEX(MaKH,$D5,0))
C5 = IF(ISNA($D5),"",INDEX(MaMH,$D5,0))
Chép công thức xuống phía dưới. Bây giờ, bạn cứ thoải mái nhập những điều kiện vào vùng điều kiện, dữ liệu sẽ được lọc theo ý của bạn
 
adam_tran

adam_tran

Steel Partner
17/5/05
1,373
32
48
41
Goooogle
#5
handung107 nói:
Dùng các hàm : MATCH, OFFSET và INDEX để thiết lập chế độ tự động trích rút dữ liệu bằng các hàm

Rất hay, biết thêm được ứng dụng của những hàm trên. Thank you sister Hanh Dung
 
S

SA_DQ

Thành viên thân thiết
29/6/05
433
38
28
61
HCM city
#6
Sửa càng nhiều càng uyển chuyển!

Sau đó sửa lại 1 chút macro vừa ghi

:two: Không nên sửa một chút đâu, mà nên sửa càng nhiều càng tốt, VD:
* Lọc với các trường nào bất kỳ: Nhập giá trị cần tìm vào InputBox & đem nó tới ô điều kiện lọc mà nạp vào trước khi Run;
*Ta cũng có thể không thích lọc theo trường này mà lọc theo trường khác nữa cũng OK mà;
chỉ cần :wall:
 
O

omron

Thành viên sơ cấp
28/6/05
34
0
0
41
TPHCM
#7
sẵn đây cho mình hỏi, có cách nào lập bảng đối chiếu công nợ mà mình chỉ cần gõ tên khách hàng, từ ngày đến ngày là nó lập cho mình theo mẫu. Vd : Cộng Hoà XHCN Việt Nam......... bảng đối chiếu công nợ ........... số dư đầu kỳ ..............từ ngày đến ngày Cty có bán cho DN ....(chi tiết bán).................. DN .... thanh toán ( chi tiết thanh toán), .......số còn lại phải trả............. chân thành cám ơn sự ủng hộ của DN...........Giám đốc ký.

Hoàn toàn tự động, chỉ cần gõ tên khách và ngày, còn lại chèn chi tiết và số liệu excel làm hết.Mình không thích xài Macro.
 
H

handung107

Thành viên thân thiết
28/8/04
576
13
0
VN
www.giaiphapexcel.com
#8
Với cách đã giới thiệu, chỉ cần vùng điều kiện là bạn có thể lọc dữ liệu như ý muốn
 
H

HyperVN

<b>Phu hót rác</b>
17/3/03
1,833
14
0
42
Hải Phòng
www.webketoan.vn
#9
Mình có làm một file biên bản đối chiếu công nợ theo ý của bạn, nhưng giờ mất tiêu rồi, để cố gắng tìm lại xem sao.
 
O

omron

Thành viên sơ cấp
28/6/05
34
0
0
41
TPHCM
#10
handung107 nói:
Với cách đã giới thiệu, chỉ cần vùng điều kiện là bạn có thể lọc dữ liệu như ý muốn
To handung107 : ý của mình là nó tự động chèn thêm hoặc bớt đi !
 
L

levanduyet

Welcome
16/10/04
535
11
18
HCM
my.opera.com
#11
Gởi bạn omron (Chắc có lẻ bạn có liên quan đến điện tử...)
Bạn hãy gởi file cho tôi, tôi sẽ giúp bạn như ý muốn. Nếu nhận được tin nhắn xin bạn gởi liền vì tôi chỉ rảnh vào CN.
Chúc bạn cuối tuần vui, khỏe, trẻ.
Lê Văn Duyệt
 
F

ForestC

Thành viên sơ cấp
11/1/05
377
1
0
39
E'rywhere
#12
2 anh LVD (anh đúng thật là tò mò, lại còn chắc có lẻ ... :p)

Vấn đề của bạn Omron mình nghĩ không phải là 1 vấn đề khó mà chỉ là 1 vấn đề .. thú vị (?!). Thực ra bạn có thể giải quyết triệt để vấn đề này hoàn toàn = các hàm tìm kiếm và tìm kiếm cao cấp của Excel: lookup, index, offset, match .. Xin tiết lộ là vấn đề này hiện nay cô bé W của EFC chúng ta đã trở thành .. cao thủ. Có gì bạn liên lạc với cô bé đó nhé. :p W
 
S

SA_DQ

Thành viên thân thiết
29/6/05
433
38
28
61
HCM city
#13
Nếu dùng VBA sẽ dễ bảo trì hơn!

Lập được đoạn mã chương trình thì nên làm như vậy, thuận tiện trong bảo trì vì đoạn mã này có thể in ra nếu muốn lưu;
VD kết hợp giữa hàm DCount, DSum & chép kết quả của nó đến vị trí khác; Sau đó lại nhập các Đ/K vào vùng Đ/K như HANHDUNG nêu & cứ thế tiếp tục . . . Thì sẽ rất mạnh đó nha!
 
O

omron

Thành viên sơ cấp
28/6/05
34
0
0
41
TPHCM
#14
levanduyet nói:
Gởi bạn omron (Chắc có lẻ bạn có liên quan đến điện tử...)
Bạn hãy gởi file cho tôi, tôi sẽ giúp bạn như ý muốn. Nếu nhận được tin nhắn xin bạn gởi liền vì tôi chỉ rảnh vào CN.
Chúc bạn cuối tuần vui, khỏe, trẻ.
Lê Văn Duyệt
To : Lê Văn Duyệt
Mình định gởi cho bạn file này và mong được hướng dẫn.nhưng không thể gởi kèm file. Bạn chio mình điạ chỉ email nhe. Email của mình : hip_hop172003@yahoo.com
 
O

omron

Thành viên sơ cấp
28/6/05
34
0
0
41
TPHCM
#15
MaiKa nói:
2 anh LVD (anh đúng thật là tò mò, lại còn chắc có lẻ ... :p)

Vấn đề của bạn Omron mình nghĩ không phải là 1 vấn đề khó mà chỉ là 1 vấn đề .. thú vị (?!). Thực ra bạn có thể giải quyết triệt để vấn đề này hoàn toàn = các hàm tìm kiếm và tìm kiếm cao cấp của Excel: lookup, index, offset, match .. Xin tiết lộ là vấn đề này hiện nay cô bé W của EFC chúng ta đã trở thành .. cao thủ. Có gì bạn liên lạc với cô bé đó nhé. :p W
P W là ai vậy bạn, mình rất muốn được chỉ giáo.
 
F

ForestC

Thành viên sơ cấp
11/1/05
377
1
0
39
E'rywhere
#16
hì, không phải P W mà là W thôi. Chắc Omron mới vào nên chưa biết W là cái người mà ai cũng biết là ai đấy: ma xó của EFC tên đầy đủ WhoamI. Omron gửi e-mail cho mình một bản xem sao. Vấn đề này mình đã làm vài lần rồi chắc là cũng biết cách làm. (ntlam88@yahoo.com)
 
Sửa lần cuối:
F

ForestC

Thành viên sơ cấp
11/1/05
377
1
0
39
E'rywhere
#19
hi. Hôm qua mình đã nhận được file của Mr. Ôm rốn. Kể ra thì vấn đề đúng như mình nghĩ, tất cả đều phải dùng đến các hàm định vị và tìm kiếm. Ở đây mình không bàn luận về độ mỹ thuật trong cách trình bày biểu bảng của anh nhé (Lề lối, khổ giấy, căn chỉnh lọ chai, format tiêu đề ngày, chưa tạo hộp chọn fill down - Combo Box...ect...). mà chỉ chú tâm vào cách giải quyết vấn đề thôi. Quả thật đây là vấn đề rất hay và mình đã giải quyết nó. Tuy nhiên nếu nhìn bài toán này dưới góc độ quản trị thì nó còn thiếu nhiều biểu bảng lắm đây. (Chắc là anh cũng có những thứ đó rồi nhưng vì vội nên không đưa lên đây?)

File này của anh được sửa vội vàng để gửi e-mail cho nhanh fải không? vì mình phát hiện ra 1 bút toán sai về nội dung đấy. Bút toán nào đó của khách hàng CTTP ấy mà: đúng là râu ông nọ cắm ... bà kia nhé. Thảo nào mình thử mọi khách hàng đều đúng hết duy chỉ có mỗi CTTP là không đúng nhưng mình đã sửa lại.

Để làm những bài toán kiểu này, mọi người hãy tham khảm 2 files sau: File NhapXuatTon_New của anh Thanhnhan53 (chủ yếu là sheet Thekho) và QuanLyDNNopThue. Trực tiếp thì hỏi chị handung107 hoặc em WhoamI.

À, cho vay mượn 20K Quota của MaiKa để upload files lên nhé (tiếc đứt ruột :) )

File Loc1.zip là file gốc.
File loc1_maika.zip là file MaiKa đã xử lý.

P/S: 2W: em học đâu cái kiểu nói vậy thế, It's a big banana so pzl enjoin 8 magazine !!!
 

Đính kèm

W

WhoamI

Thành viên thân thiết
#20
MaiKa nói:
hi. Hôm qua mình đã nhận được file của Mr. Ôm rốn. Kể ra thì vấn đề đúng như mình nghĩ, tất cả đều phải dùng đến các hàm định vị và tìm kiếm.
Để làm những bài toán kiểu này, mọi người hãy tham khảm 2 files sau: File NhapXuatTon_New của anh Thanhnhan53 (chủ yếu là sheet Thekho) và QuanLyDNNopThue. Trực tiếp thì hỏi chị handung107 hoặc em WhoamI.
Có vẻ file của a MAIKA đã giải quyết được toàn diện vấn đề của bác rồi thì phải. ( đúng là người chăm chỉ! )
Em chưa xem file được nhưng chắc chỉ cần dùng kết hợp các hàm Match, Offset như ở dòng Ghi chú trong sheet Thekho (file của Bác Thanhnhanh53) để cho ra số thứ tự hàng (row) liên tục của các record trong CSDL thoả mãn điều kiện tìm kiếm . Sau đó sử dụng hàm Index với số thứ tự hàng vừa tìm được để lấy ra các dữ liệu cần thiết. Có vấn đề gì nữa thì bác cứ post nhé, ở đây có người nhiệt tình lắm bác ạ! :biggrin:
 

Thành viên trực tuyến

  • Hà Huy Tiến
  • Ngọc Ánh Đỗ
  • tranghoangbds
  • opera

Xem nhiều