VBA For Each不会转到每个工作表

时间:2015-01-15 19:17:18

标签: excel-vba vba excel

我的代码部分存在问题。它应该转到名称以Employee-开头的每个工作表,但它只会转到第一个名为Employee-Lilly的工作表并反复循环过滤器。

我需要编写代码以转到名称以Employee-开头并过滤的所有工作表。

 For Each sheetObject In ThisWorkbook.Worksheets
     If sheetObject.name Like "Employee*" Then
        Set target = sheetObject.Range("A1:O80000")

        Selection.AutoFilter
        target.AutoFilter _
            Field:=13, _
            Criteria1:=">=" & Date
    End If
Next sheetObject

1 个答案:

答案 0 :(得分:0)

你可以试试这个。避免使用选择将加快您的代码。

For Each sheetObject In ThisWorkbook.Worksheets
 If sheetObject.name Like "Employee*" Then
    with sheetObject.Range("A1:O80000")
       .AutoFilter _
        Field:=13, _
        Criteria1:=">=" & Date
    end with
  End If
Next sheetObject