2017-05-08 1 views
1

私はすべてのマクロの前に小さなコードを置いて、ブックのすべてのシートからフィルタを削除します。マクロを実行する前にすべてのシートからフィルタリングを削除します

私が行ったことは次のとおりですが、正しく動作していないようです。ボタンをクリックするとフィルタは削除されませんが、行ごとに実行するとフィルタは削除されません。

私はtは理解ドン "。

WS_Count = ActiveWorkbook.Worksheets.Count 

' Begin the loop to disable all filters 
For i = 1 To WS_Count 
    If (ActiveSheet.AutoFilterMode And ActiveSheet.FilterMode) Or ActiveSheet.FilterMode Then 
     ActiveSheet.ShowAllData 
    End If 
Next i 

答えて

1

あなたfor loopあなたがiを参照していないとして使用されていない。また、あなたのIf声明の第二の基準は、基本的には、第1の基準は無関係になり、これを試してみてください:

WS_Count = ActiveWorkbook.Worksheets.Count 

' Begin the loop to disable all filters 
For i = 1 To WS_Count 
    If Thisworkbook.Sheets(i).FilterMode Then 
     Thisworkbook.Sheets(i).ShowAllData 
    End If 
Next i 
関連する問題