• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:EXCEL VBAでのオートフィルター)

EXCEL VBAでのオートフィルター

このQ&Aのポイント
  • EXCELのVBAで日付のデータを過去1日、過去1週間、過去1ヶ月などのボタンを作成し、クリックしたらオートフィルター機能で各条件に合ったデータを表示する方法について教えてください。
  • ボタンをクリックした際にフィルターがない状態では正常に機能するが、連続してボタンをクリックすると表示が変わらない問題が発生しています。対策方法や正しいやり方を教えてください。
  • EXCEL2000で上記の問題が発生しています。

質問者が選んだベストアンサー

  • ベストアンサー
  • TTak
  • ベストアンサー率52% (206/389)
回答No.1

現在オートフィルタモードであるかどうかを判別して、処理を分けるといいでしょう。次の例はAutoFilterModeを使って判別しています。 With Activesheet   If .AutoFilterMode = False Then     .Range("データ範囲").AutoFilter 'この後に条件   Else    If .FilterMode = True Then      MsgBox "フィルタリングを解除してください"      Exit Sub    End If      res = MsgBox("オートフィルタを解除しますか?", vbOKCancel)      If res = vbOK Then .Range("データ範囲").AutoFilter    End If End With

Fat01ton
質問者

お礼

ご回答ありがとうございます。 おかげさまで解決いたしました。 AutoFilterModeというものがあるのですね。 実際の動作を記憶させ、それをマクロにしている レベルですので知りませんでした。 勉強になりました。

関連するQ&A