Chào các bác
Em có 1 code VBA lọc dữ liệu theo điều kiện như sau, hiện đang được gắn vào vùng data từ "A5:Jxxx" tại sheet "Pv"
Xin nhờ mọi người có cách nào VBA nhận được tùy biến khi vùng giá trị bảng lọc ban đầu "A5:Jxxx" nó thay đổi khi em chèn thêm cột hoặc xóa bớt dòng không ạ
Em ví dụ việc thay đổi vùng range như dưới:
1-Trong TH nếu phải chèn thêm 1 số cột đằng trước cột A ---> vd sheet Pv2: chèn thêm 3 cột thì vùng dữ liệu lọc sẽ thành "D5:Mxxx"
2-Hoặc em chèn 3 cột trong vùng data ban đầu ---> vd sheet Pv3: chèn 3 cột C,D,F thì vùng dữ liệu lọc sẽ thành "A5:Mxxx"
3-Hoặc sheet Pv4 ; vừa chèn thêm 3 cột trước cột A + chèn 4 cột sau cột A + xóa 2 dòng trên ---> bảng mới "D3:Qxxx"
Cám ơn mọi người nhiều


Em có 1 code VBA lọc dữ liệu theo điều kiện như sau, hiện đang được gắn vào vùng data từ "A5:Jxxx" tại sheet "Pv"
Xin nhờ mọi người có cách nào VBA nhận được tùy biến khi vùng giá trị bảng lọc ban đầu "A5:Jxxx" nó thay đổi khi em chèn thêm cột hoặc xóa bớt dòng không ạ
Em ví dụ việc thay đổi vùng range như dưới:
1-Trong TH nếu phải chèn thêm 1 số cột đằng trước cột A ---> vd sheet Pv2: chèn thêm 3 cột thì vùng dữ liệu lọc sẽ thành "D5:Mxxx"
2-Hoặc em chèn 3 cột trong vùng data ban đầu ---> vd sheet Pv3: chèn 3 cột C,D,F thì vùng dữ liệu lọc sẽ thành "A5:Mxxx"
3-Hoặc sheet Pv4 ; vừa chèn thêm 3 cột trước cột A + chèn 4 cột sau cột A + xóa 2 dòng trên ---> bảng mới "D3:Qxxx"
Cám ơn mọi người nhiều
Mã:
Sub Filter()
'Declare a variable
Dim ws As Worksheet
Set ws = Worksheets("Pv")
Vol = ">=" & ws.Range("E4").value
ws.Range("A5:J" & [I100000].End(xlUp).Row).AutoFilter
ws.Range("A5:J" & [I100000].End(xlUp).Row).AutoFilter Field:=5, Criteria1:=Vol
End Sub





