Excel VBA – 循环不添加autofilters到我的工作表

我有一些代码(应该)循环所有的工作表,并添加一个自动filter,但由于某些原因,他们没有显示出来。 当我打开事件,我可以看到,它很快被添加,然后几乎立即删除。 我假设这是因为在我的代码早些时候写的东西,但我有太多的代码在此之前,以评估是什么原因造成的问题…有什么我可以添加,以确保filter添加? 码:

Dim wsfixer As Worksheet For Each wsfixer In ActiveWorkbook.Worksheets With ActiveSheet .AutoFilterMode = False .Range("A:S").AutoFilter End With On Error Resume Next Next 

如果要处理每个工作表上的代码,请更改

 With ActiveSheet 

 With wsfixer 

通过使用With ActiveSheet With块内的代码被“快捷”使用活动工作表(例如.AutoFilterMode被视为ActiveSheet.AutoFilterMode )。 所以你一次又一次地执行相同的代码到一个活动工作表。