使用阵列数据VBA自动过滤

时间:2014-07-02 05:34:28

标签: vba excel-vba excel

我有一个子例程,它将唯一值存储在一个数组中,并根据这个数组我要过滤值,下面是唯一值代码

Sub FUniques()
Range(Range("G2"), Range("G2").End(xlDown)).Select

If Not Selection Is Nothing Then
    For Each cell In Selection
        If (cell <> "") And (InStr(tmp, cell) = 0) Then
             tmp = tmp & cell & "|"
        End If
    Next cell
End If

If Len(tmp) > 0 Then tmp = Left(tmp, Len(tmp) - 1)

arr = Split(tmp, "|")
Cells(1, 1).Select
End Sub

现在上面填充的arr我想过滤另一张表(sheet1)中的数据,我使用下面的代码,

ActiveSheet.Range("$A:$AK").AutoFilter Field:=7, Criteria1:= _
    Join(arr, ", "), Operator:=xlFilterValues

请帮我解决这个问题

1 个答案:

答案 0 :(得分:0)

得到它然后使用join我们应该使用直接“arr”