dポイントプレゼントキャンペーン実施中!

Excel2002(officeXP)で、編集->検索から検索対象をすべてのブックとしたときに、オートフィルタを設定したシートですでにフィルタをかけていると、フィルタで除外されているデータが検索されません。
フィルタがかかっているシートがわかっている場合は、データ->フィルタ->すべて表示をかけるのですが、すべてのシートのフィルタを「すべて表示」したい場合、どのような方法がありますか。

A 回答 (2件)

オートフィルタ自体は解除せず、フィルタの絞り込みを解除するマクロです。

コードの整理ができていないので冗長ですが、とりあえず動作はしました。

このマクロをBOOKの標準モジュールにペーストして実行して下さい

Sub 絞り込み解除()
Dim idxSheet, idxField , cntField As Integer
Dim curSheet, curADRS As String
  Application.ScreenUpdating = False
curSheet = ActiveSheet.Name
curADRS = Selection.Address
For idxSheet = 1 To  ActiveWorkbook.Worksheets.Count
If Worksheets(idxSheet).AutoFilterMode Then
cntField = Worksheets(idxSheet).AutoFilter.Filters.Count
Worksheets(idxSheet).Activate
ActiveSheet.Cells(1, 1).Select
For idxField = 1 To cntField
Selection.AutoFilter Field:=idxField
Next idxField
End If
Next
Worksheets(curSheet).Select
ActiveSheet.Range(curADRS).Activate
Application.ScreenUpdating = True
End Sub
    • good
    • 4
この回答へのお礼

早速実行してみました。希望通りの動作で感激しました。
マクロは初心者なので、きれいに整理されるよりも今回のサンプルの方が理解しやすかったです。整理はもう少し内容をながめて理解してから挑戦してみます。
ありがとうございました。

お礼日時:2006/06/26 18:28

ActiveSheet.AutoFilterMode = False


として解除してしまうのが手っ取り早いです。
必要なら、別の場所でフィルタをセットしましょう。

解除以外なら、
Selection.AutoFilter Field:=1
Selection.AutoFilter Field:=2
Selection.AutoFilter Field:=3
       :
と、フィルタ設定をリセット(すべて表示)していくことになります。
    • good
    • 1

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!