trợ giúp lọc dữ liệu

  • Thread starter Thread starter Sil_90
  • Ngày gửi Ngày gửi
Liên hệ QC

Sil_90

Thành viên chính thức
Tham gia
22/5/17
Bài viết
94
Được thích
13
Giới tính
Nữ
các bác cao thủ trợ giúp em với ạ,
em có file dữ liệu ở sheet "Reference data" em muốn kết quả ra là, nếu em tìm kiếm ở cột B tên "FTV code" thì kết quả sẽ hiển thị cột B,C, D, E, F nếu có giá trị tương ứng.
hoặc em có thể tìm kiếm theo cột C tên 'HS code" thì kết quả cũng sẽ hiển thị theo cột D, E, F tương ứng nếu có giá trị
em đính kèm file ở đây, các bác coi và chỉ giáo giúp em.
em cám ơn
 

File đính kèm

các bác cao thủ trợ giúp em với ạ,
em có file dữ liệu ở sheet "Reference data" em muốn kết quả ra là, nếu em tìm kiếm ở cột B tên "FTV code" thì kết quả sẽ hiển thị cột B,C, D, E, F nếu có giá trị tương ứng.
hoặc em có thể tìm kiếm theo cột C tên 'HS code" thì kết quả cũng sẽ hiển thị theo cột D, E, F tương ứng nếu có giá trị
em đính kèm file ở đây, các bác coi và chỉ giáo giúp em.
em cám ơn
Bạn thử tham khảo tại đây.
 
Trả lời kiểu này thì đời nào lên "cao thủ" :p
Hỏng biết ai ham làm "cao thủ" chứ tôi thì coi như đó là xuống cấp.
"thủ" là tay, phải hôn? giỏi tay chân làm sao sánh được với giỏi trí tuệ. :(
Em thấy bài đó với bài #1 na ná nhau mà. (Em chỉ làm hạ thủ thôi anh).
 
Lần chỉnh sửa cuối:
Trường "FTV code" sao lại có dữ liệu trống vậy bạn? trống có nghĩa là không có FTV code?
 
Bạn thử tham khảo tại đây.

Trường "FTV code" sao lại có dữ liệu trống vậy bạn? trống có nghĩa là không có FTV code?
vầng, có cái có, có cái sẽ không có FTV code này, nên em mới muốn tìm kiếm bằng cả 2 giá trị
Bài đã được tự động gộp:

Trả lời kiểu này thì đời nào lên "cao thủ" :p

Hỏng biết ai ham làm "cao thủ" chứ tôi thì coi như đó là xuống cấp.
"thủ" là tay, phải hôn? giỏi tay chân làm sao sánh được với giỏi trí tuệ. :(
anh có thể giúp, có thể không, anh biết nhưng người khác không biết, đừng bắt người khác phải biết những cái gì mình đã biết. ở đây là trang cộng đồng trợ giúp và chia sẻ. với bản thân em, ai biết hơn em cái gì dù là việc nhặt một cái kim em cũng gọi là cao hơn em và đáng được học tập. anh đừng dùng giọng văn coi thường người khác như vậy ah.
 
vầng, có cái có, có cái sẽ không có FTV code này, nên em mới muốn tìm kiếm bằng cả 2 giá trị
Bài đã được tự động gộp:


anh có thể giúp, có thể không, anh biết nhưng người khác không biết, đừng bắt người khác phải biết những cái gì mình đã biết. ở đây là trang cộng đồng trợ giúp và chia sẻ. với bản thân em, ai biết hơn em cái gì dù là việc nhặt một cái kim em cũng gọi là cao hơn em và đáng được học tập. anh đừng dùng giọng văn coi thường người khác như vậy ah.
Vậy kết quả lọc sẽ bỏ đi các dòng trống?
 
Vậy kết quả lọc sẽ bỏ đi các dòng trống?
đúng rồi ạ, nếu lọc bằng FTV code, thì chỉ ra những giá trị của FTV code có tồn tại thôi ạ, bỏ đi hết những vùng trống hoặc khác FTV code đó.
tương tự như vậy với cột HS code, bảng dữ liệu này có thể dùng index và match như anh bên trên chia sẻ, nhưng nó ko đáp ứng được điêu kiện chỉ hiển thị cái mình muốn tìm kiếm, loại bỏ những dòng dữ liệu ngoài vùng tìm kiếm ra ạ.
 
Em thấy bài đó với bài #1 na ná nhau mà. (Em chỉ làm hạ thủ thôi anh).
cái này không đáp ứng được yêu cầu đề bài, vừa là tìm kiếm hiển thị theo dữ liệu mình muốn và phải remove những dữ liệu không thuộc phần mình tìm kiếm đi nữa, công thức bạn gợi ý, chỉ có thể trợ giúp tìm kiếm mảng mà thôi. xin bạn đừng cười cợt như vậy.
 
cái này không đáp ứng được yêu cầu đề bài, vừa là tìm kiếm hiển thị theo dữ liệu mình muốn và phải remove những dữ liệu không thuộc phần mình tìm kiếm đi nữa, công thức bạn gợi ý, chỉ có thể trợ giúp tìm kiếm mảng mà thôi. xin bạn đừng cười cợt như vậy.
Mình thấy bài đó gần giống bài của bạn thì bảo bạn tham khảo thôi, chứ mình không cười ai cả.
 
Lần chỉnh sửa cuối:
Ở sheet Output, trường "Description" là trường nào? tôi không thấy trường này ở Sheet "Reference data"
 
... với bản thân em, ai biết hơn em cái gì dù là việc nhặt một cái kim em cũng gọi là cao hơn em và đáng được học tập....
Dóc. Biết thế nào là "nhặt một cái kim"?

... . anh đừng dùng giọng văn coi thường người khác như vậy ah.
Tôi vốn không tôn trọng những người không biết tôn trọng tiếng Việt.
Nếu bạn khẳng định được là mình biết tôn trọng tiếng Việt và văn hoá Việt thì tôi sẽ công khai xin lỗi bạn. Đối với tôi, nhìn lầm người là lỗi lầm xấu và tôi sẵn sàng xin lỗi khi biết mình lầm.
 
là trường này anh ạ
Item Name/Spec
Đấy, bạn phải chuẩn cái tên chứ, cái tên vô cùng quan trọng.
Cái này dùng Advanced Filter, chứ mà bạn dùng công thức sẽ nhọc lắm.
Click Run, nếu kết quả đúng ý bạn thì mình bàn tiếp
 

File đính kèm

Đấy, bạn phải chuẩn cái tên chứ, cái tên vô cùng quan trọng.
Cái này dùng Advanced Filter, chứ mà bạn dùng công thức sẽ nhọc lắm.
Click Run, nếu kết quả đúng ý bạn thì mình bàn tiếp
vầng em cám ơn anh, trước đó em cũng thử dùng advanced Filter, với dòng code này

ThisWorkbook.Sheets(1).Range("C1:I13639").AdvancedFilter Action:=xlFilterCopy, CriteriaRange:=ThisWorkbook.Sheets(2). _
Range("H1:H2"), CopyToRange:=ThisWorkbook.Sheets(2).Range("A5:G5"), Unique:=False
nhưng kết quả không được như mong đợi, nếu tìm kiếm theo FTV hay HS code đều không thể chỉ cập nhật dữ liệu theo phần mình muốn tìm kiếm, nó hiển thị nhiều phần không liên quan quá anh ạ. anh có cách gì khắc phục vấn đề này không ạ
 
vầng em cám ơn anh, trước đó em cũng thử dùng advanced Filter, với dòng code này

ThisWorkbook.Sheets(1).Range("C1:I13639").AdvancedFilter Action:=xlFilterCopy, CriteriaRange:=ThisWorkbook.Sheets(2). _
Range("H1:H2"), CopyToRange:=ThisWorkbook.Sheets(2).Range("A5:G5"), Unique:=False
nhưng kết quả không được như mong đợi, nếu tìm kiếm theo FTV hay HS code đều không thể chỉ cập nhật dữ liệu theo phần mình muốn tìm kiếm, nó hiển thị nhiều phần không liên quan quá anh ạ. anh có cách gì khắc phục vấn đề này không ạ
Vấn đề là bạn muốn lọc cái gì? Kết quả mong đợi là như thế nào? Tôi lọc theo ý của bạn ra kết quả ko như mong đợi?
Với câu lệnh AF bạn viết tôi thấy tham chiếu sai hết:
- ThisWorkbook.Sheets(1).Range("C1:I13639"): đây được hiểu là vùng cần lọc, mà vùng cần lọc ở đây phải là Sheet1.Range("A1:G10000")
- ThisWorkbook.Sheets(2).Range("H1:H2"): được hiểu là điều kiện lọc, mà tôi cũng ko thấy điều kiện lọc nào ở ô này trên File của bạn.
-ThisWorkbook.Sheets(2).Range("A5:G5"): được hiểu là nơi paste kết quả, ngay từ đầu File của bạn phần kết quả có trường Description (mà trong vùng cần lọc ko có trường nào thế này) thì ko thể lọc được. Thêm nữa A5:G5 cũng ko phải nơi để gán kết quả, mà phải là B6:F6
 
Lần chỉnh sửa cuối:
Vấn đề là bạn muốn lọc cái gì? Kết quả mong đợi là như thế nào? Tôi lọc theo ý của bạn ra kết quả ko như mong đợi?
Với câu lệnh AF bạn viết tôi thấy tham chiếu sai hết:
- ThisWorkbook.Sheets(1).Range("C1:I13639"): đây được hiểu là vùng cần lọc, mà vùng cần lọc ở đây phải là Sheet1.Range("A1:G10000")
- ThisWorkbook.Sheets(2).Range("H1:H2"): được hiểu là điều kiện lọc, mà tôi cũng ko thấy điều kiện lọc nào ở ô này trên File của bạn.
-ThisWorkbook.Sheets(2).Range("A5:G5"): được hiểu là nơi paste kết quả, ngay từ đầu File của bạn phần kết quả có trường Description (mà trong vùng cần lọc ko có trường nào thế này) thì ko thể lọc được. Thêm nữa A5:G5 cũng ko phải nơi để gán kết quả, mà phải là B6:F6
dạ anh để em giải thích chi tiết hơn.

1- Vấn đề là bạn muốn lọc cái gì? Kết quả mong đợi là như thế nào? Tôi lọc theo ý của bạn ra kết quả ko như mong đợi? => dả dụ em lọc theo FTV code HMC00-0011 thì em chỉ muốn kết quả nó ra của đúng code đó, mà thôi như bên dưới này ạ, không muốn hiển thị thêm những kết quả khác ngoài dữ liệu em lọc

1633398694024.png

2- - ThisWorkbook.Sheets(1).Range("C1:I13639"): đây được hiểu là vùng cần lọc, mà vùng cần lọc ở đây phải là Sheet1.Range("A1:G10000") => vâng nếu file ở đây thì đúng thế ạ, nhưng em insert thêm 2 cộ đầu ở sheet "Reference data" để tạo advanced Filter nên vùng dữ liệu nó bị đẩy lùi 2 cột.

3- - ThisWorkbook.Sheets(2).Range("H1:H2"): được hiểu là điều kiện lọc, mà tôi cũng ko thấy điều kiện lọc nào ở ô này trên File của bạn. => sâu khi thử 2 cột đầu ở Sheet "Reference data" em muốn chuyển điều kiện lọc sang sheet 2"Output" để không phải input cái điều kiều lọc vào sheet 1 ạ.
4- ThisWorkbook.Sheets(2).Range("A5:G5"): được hiểu là nơi paste kết quả, ngay từ đầu File của bạn phần kết quả có trường Description (mà trong vùng cần lọc ko có trường nào thế này) thì ko thể lọc được. Thêm nữa A5:G5 cũng ko phải nơi để gán kết quả, mà phải là B6:F6 => cái này nếu em bỏ hết phần logic diễn giải ở phía trên em vẽ vô đó để giải thích cho mọi người dễ hiểu hơn khi xem file, thì đặt từ A5:G5 là ok anh ạ.
 
dạ anh để em giải thích chi tiết hơn.

1- Vấn đề là bạn muốn lọc cái gì? Kết quả mong đợi là như thế nào? Tôi lọc theo ý của bạn ra kết quả ko như mong đợi? => dả dụ em lọc theo FTV code HMC00-0011 thì em chỉ muốn kết quả nó ra của đúng code đó, mà thôi như bên dưới này ạ, không muốn hiển thị thêm những kết quả khác ngoài dữ liệu em lọc

View attachment 267180

2- - ThisWorkbook.Sheets(1).Range("C1:I13639"): đây được hiểu là vùng cần lọc, mà vùng cần lọc ở đây phải là Sheet1.Range("A1:G10000") => vâng nếu file ở đây thì đúng thế ạ, nhưng em insert thêm 2 cộ đầu ở sheet "Reference data" để tạo advanced Filter nên vùng dữ liệu nó bị đẩy lùi 2 cột.

3- - ThisWorkbook.Sheets(2).Range("H1:H2"): được hiểu là điều kiện lọc, mà tôi cũng ko thấy điều kiện lọc nào ở ô này trên File của bạn. => sâu khi thử 2 cột đầu ở Sheet "Reference data" em muốn chuyển điều kiện lọc sang sheet 2"Output" để không phải input cái điều kiều lọc vào sheet 1 ạ.
4- ThisWorkbook.Sheets(2).Range("A5:G5"): được hiểu là nơi paste kết quả, ngay từ đầu File của bạn phần kết quả có trường Description (mà trong vùng cần lọc ko có trường nào thế này) thì ko thể lọc được. Thêm nữa A5:G5 cũng ko phải nơi để gán kết quả, mà phải là B6:F6 => cái này nếu em bỏ hết phần logic diễn giải ở phía trên em vẽ vô đó để giải thích cho mọi người dễ hiểu hơn khi xem file, thì đặt từ A5:G5 là ok anh ạ.
Vậy như thế này đã đúng chưa bạn?
 

File đính kèm

Ý của bạn là muốn đưa điều kiện lọc vào Text của Shape, tôi nghĩ là sẽ không ai làm vậy, điều kiện lọc rất cơ động, phải đưa vào Cell.
 
Web KT

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

Back
Top Bottom