オートフィルタ使用時の注意
オートフィルタを繰り返し使用する処理を書く場合には以下の点に気をつけること。
- 該当シートにオートフィルタが設定されているかどうかを確認
- 設定されている場合は一度解除する( object.AutoFilterMode = False )
- フィルタを設定
- (できれば)フィルタを解除して次の処理へ渡す
以下サンプルコード
Dim ws As Worksheet Set ws = ThisWorkbook.Sheet(1) If ws.FilterMode Then ws.AutoFilterMode = False End If With ws.Rows(1) .AutoFilter <span style="font-style:italic;">...</span> End With <span style="font-style:italic;">...</span> ws.AutoFilterMode = False