搜索空白的列过滤器并循环访问工作簿

时间:2014-01-22 09:43:02

标签: excel vba excel-vba

我有点像vba初学者,但我试图编写一个搜索列的宏然后一旦发现它过滤掉空白然后循环它为工作簿中的所有工作表

我从这开始找到专栏

SearchCol = "ID"

Dim rng1 As Range
Set rng1 = activesheet.UsedRange.Find(SearchCol, , xlValues, xlWhole)

With Range("A1").Select
Selection.AutoFilter
Selection.AutoFilter field:=rng1.Column, Criteria1:="<>"
End With

然后我试图将它与此结合以通过工作表循环

Dim ws As Object

For Each ws In Worksheets

    With ws.Range("A2")
        .AutoFilter field:=1, Criteria1:="<>"
        .AutoFilter field:=1, Criteria1:="<>"
         End With

Next ws

非常感谢任何帮助

1 个答案:

答案 0 :(得分:0)

试试这个:

Sub test()
    Dim SearchCol As String
    Dim rng1 As Range
    Dim ws As Worksheet

    SearchCol = "ID"

    For Each ws In Worksheets
        Set rng1 = ws.UsedRange.Find(SearchCol, , xlValues, xlWhole)
        If Not rng1 Is Nothing Then
            With ws.Range("A2")
                .AutoFilter field:=rng1.Column, Criteria1:="<>"
            End With
        End If
    Next ws
End Sub