根据已过滤的列进行过滤

时间:2020-10-06 09:58:37

标签: excel vba

我想获得您的帮助,我想根据Activesheet上过滤的值从工作表“零件状态”中过滤A列的值。

使用此代码,它始终在“零件状态”中过滤活动工作表中的所有值,而我只想基于过滤后的值进行过滤。

您能告诉我代码上的错误在哪里吗?

Sub FilterTest1()

    Dim RngOne As Range, cell As Range
    Dim arrList() As String, lngCnt As Long
    
    With ActiveSheet
        Set RngOne = .Range("A6:A500")
    End With
    
    'load values into an array
    lngCnt = 0
    
    For Each cell In RngOne
        ReDim Preserve arrList(lngCnt)
        arrList(lngCnt) = cell.Text
        lngCnt = lngCnt + 1
    Next
    
    With Sheets("Parts Status")
        If .FilterMode Then .ShowAllData
        .Range("A11:A1000").AutoFilter Field:=1, Criteria1:=arrList, Operator:=xlFilterValues
    End With

End Sub

1 个答案:

答案 0 :(得分:0)

设置RngOne = .Range(“ A6:A500”)。SpecialCells(xlCellTypeVisible)