Hỗ trợ lọc nhanh giá trị cần tìm trong bảng dữ liệu

Liên hệ QC

domjnjc

Thành viên chính thức
Tham gia
7/5/12
Bài viết
86
Được thích
13
Em chào anh,chị.

Em muốn khi nhập dữ liệu vào ô G2, H2. Bảng 1 sẽ hiển thị kết quả lọc được theo dữ liệu đó.

Untitled.png
Em cảm ơn!
 

File đính kèm

  • vidu.xlsx
    10.2 KB · Đọc: 15
Em chào anh,chị.

Em muốn khi nhập dữ liệu vào ô G2, H2. Bảng 1 sẽ hiển thị kết quả lọc được theo dữ liệu đó.

View attachment 259026
Em cảm ơn!
Thử dùng code này.
Mã:
Private Sub Worksheet_Change(ByVal Target As Range)
    Dim sCell As Range
    For Each sCell In Target
        If (sCell.Address = "$G$2") Or (sCell.Address = "$H$2") Then
            If Range("G2") <> Empty Then Range("$A$3:$D$3").AutoFilter Field:=1, Criteria1:=Range("G2").Value
            If Range("H2") <> Empty Then Range("$A$3:$D$3").AutoFilter Field:=2, Criteria1:=Range("H2").Value
            If (Range("G2") = Empty) And (Range("H2") = Empty) Then ActiveSheet.AutoFilterMode = False
        End If
    Next sCell
End Sub
 
Upvote 0
Thử dùng code này.
Mã:
Private Sub Worksheet_Change(ByVal Target As Range)
    Dim sCell As Range
    For Each sCell In Target
        If (sCell.Address = "$G$2") Or (sCell.Address = "$H$2") Then
            If Range("G2") <> Empty Then Range("$A$3:$D$3").AutoFilter Field:=1, Criteria1:=Range("G2").Value
            If Range("H2") <> Empty Then Range("$A$3:$D$3").AutoFilter Field:=2, Criteria1:=Range("H2").Value
            If (Range("G2") = Empty) And (Range("H2") = Empty) Then ActiveSheet.AutoFilterMode = False
        End If
    Next sCell
End Sub
Em cảm ơn! Nhưng dữ liệu em muốn lọc cần có tất cả những dòng chứa a1 ạ, em chạy code trên thì thiếu a1 khi a1 nằm ở cột B ạ
 
Lần chỉnh sửa cuối:
Upvote 0
Thử dùng code này.
Mã:
Private Sub Worksheet_Change(ByVal Target As Range)
    Dim sCell As Range
    For Each sCell In Target
        If (sCell.Address = "$G$2") Or (sCell.Address = "$H$2") Then
            If Range("G2") <> Empty Then Range("$A$3:$D$3").AutoFilter Field:=1, Criteria1:=Range("G2").Value
            If Range("H2") <> Empty Then Range("$A$3:$D$3").AutoFilter Field:=2, Criteria1:=Range("H2").Value
            If (Range("G2") = Empty) And (Range("H2") = Empty) Then ActiveSheet.AutoFilterMode = False
        End If
    Next sCell
End Sub

Em cảm ơn! Nhưng dữ liệu em muốn lọc cần có tất cả những dòng chứa a1 ạ, em chạy code trên thì thiếu a1 khi a1 nằm ở cột B ạ
A check giúp e ạ
 
Upvote 0
Dùng cột phụ với hàm Countif rồi lọc theo cột phụ là được.
 
Upvote 0
Xem file nha bạn
 

File đính kèm

  • Copy of vidu-1.xlsm
    15.6 KB · Đọc: 12
Upvote 0
Do table chứ không phải do textbox.
 
Upvote 0
Do table chứ không phải do textbox.
Theo em hiểu thì phải có filter ở dòng header của bảng. Em kết hợp cách của anh với của anh "giaiphap" thì đến bước nhập 1 vào ô Input2 thì kết quả ra đúng ý muốn của em rồi, nhưng khi xóa "1" ở input2 thì bảng biểu sẽ trở về ban đầu. không còn filter ở header nữa. Do đó, khi lọc dữ liệu tiếp theo, phần code của a bị Runtime error "91". Mong anh sửa giúp em được không ạ?
 

File đính kèm

  • Copy of vidu-1.xlsm
    16.7 KB · Đọc: 3
Upvote 0
Yêu cầu của bạn đã được giải quyết rồi, sao phải kết hợp vậy bạn?
 
Upvote 0
Web KT

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

Back
Top Bottom