Giúp mình sửa dùm đoạn code lọc dữ liệu theo điều kiện

Liên hệ QC

luuthingocanh

Thành viên mới
Tham gia
4/5/11
Bài viết
17
Được thích
0
Mình rất thích sử dụng VBA đơn giản để ứng dụng trong công việc quản lý dữ liệu của mình, vì thế mình hay tham khảo các chủ để của diễn đàn rồi học làm theo. Như bài tập nhỏ này mình học theo và viết code nhưng nó ko chạy.

Ý của mình là sử dụng advance filter kết hợp với nút option (như file đính kèm). Trong file mình có đưa 2 điều kiện chữ màu đỏ và có viết code nhưng ko chạy được.

Các ace sửa giúp mình cho nó chạy và giải thích dùm mình tại sao nó ko chạy được nha.
 

File đính kèm

Mình rất thích sử dụng VBA đơn giản để ứng dụng trong công việc quản lý dữ liệu của mình, vì thế mình hay tham khảo các chủ để của diễn đàn rồi học làm theo. Như bài tập nhỏ này mình học theo và viết code nhưng nó ko chạy.

Ý của mình là sử dụng advance filter kết hợp với nút option (như file đính kèm). Trong file mình có đưa 2 điều kiện chữ màu đỏ và có viết code nhưng ko chạy được.

Các ace sửa giúp mình cho nó chạy và giải thích dùm mình tại sao nó ko chạy được nha.
1 code thế này là đủ:
PHP:
Sub FilterData()
  Dim CritRng As Range
  On Error Resume Next
  Range("dulieu").Parent.ShowAllData
  Select Case Range("N1").Value
    Case 1: Set CritRng = Range("bd")
    Case 2: Set CritRng = Range("dn")
  End Select
  Range("dulieu").AdvancedFilter 1, CritRng
End Sub
Với Range("N1") là link cell của 3 OptionButton
Xem file
---------
Ngoài ra, trong file này vẫn còn có thể rút gọn thêm nhiều thứ khác. Chẳng hạn có thể gom 2 vùng điều kiện thành 1
 

File đính kèm

Lần chỉnh sửa cuối:
Upvote 0
Gửi anh Ndu

Thưa anh Ndu96081631, đoạn code mà a viết cho em, sao e áp dụng vào ứng dụng trong cv nó lại ko chạy ji hết.
Nó không báo lỗi nào hết mà cứ đứng đựt mặt ra đó, dân cùi bắp như e cũng ko biết đâu mà lần. Hay tại e còn thiếu một chi tiết nào đó mà ko biết.
Nhờ a xem lại giúp
 

File đính kèm

Upvote 0
Thưa anh Ndu96081631, đoạn code mà a viết cho em, sao e áp dụng vào ứng dụng trong cv nó lại ko chạy ji hết.
Nó không báo lỗi nào hết mà cứ đứng đựt mặt ra đó, dân cùi bắp như e cũng ko biết đâu mà lần. Hay tại e còn thiếu một chi tiết nào đó mà ko biết.
Nhờ a xem lại giúp
Bạn làm như sao:
- Click phải vào từng OptionButton, chọn Assign Macro, chí đến tên FilterData (trong hộp Assign Macro)
- Trong code, sửa lại như vầy:
PHP:
Sub FilterData()
  Dim CritRng As Range
  On Error Resume Next
  Range("dulieu").Parent.ShowAllData
  Select Case Range("C5").Value
    Case 2: Set CritRng = Range("BD")
    Case 3: Set CritRng = Range("DN")
  End Select
  Range("dulieu").AdvancedFilter 1, CritRng
End Sub
Tức Case 1 sửa thành Case 2 Case 2 sửa thành Case 3 (cái này là do bạn thay đổi vị trí OptionButton All thành đầu tiên mà ra)
 

File đính kèm

Lần chỉnh sửa cuối:
Upvote 0
Web KT

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

Back
Top Bottom