Excel (VBA)

Excel VBAに関するフォーラムです。
  • 解決済みのトピックにはコメントできません。
このトピックは解決済みです。
質問

 
(Windows 7 Professional : Excel 2007)
フィルターオプション再実行
投稿日時: 18/11/12 19:20:08
投稿者: FILETUBE

 こんばんは。
1つお聞きします。
 
画面に条件を入力してボタンをクリイクすると
フィルターがかかるようにしました。
 
1回目はOKなのですが、条件を入力し直して
ボタンをクリックしてもフィルターが変わりません。
 
1回閉じ、再び開いて条件を変更し
ボタンをクリックするとOKです。
 
下記がフィルターのコードですが
条件変更で再クリックしてもダメなのでしょうか?
 
 Range("A1:T30000").Select
 Cells.AdvancedFilter Action:=xlFilterCopy, CriteriaRange:=Range("Z1:AB3") _
    , CopyToRange:=Range("AC1"), Unique:=False
 
分かる方おられましたら、よろしくお願いします。

回答
投稿日時: 18/11/12 20:28:33
投稿者: WinArrow
投稿者のウェブサイトに移動

1回目と2回目以降が違うところ
 セルAC1〜のセル範囲にデータが履い入っているところです。
 
せっかく、A1〜T30000を選択しているのに
Cells.とシート内セル全部を対象にしているからではないでしょうか?
 
まず、セル範囲のSelectをしないコードを心がけてください。
 
  
2つのテストをしてみてください
  
@AC1〜のセル範囲をクリアする
  
   
Aコードを変更
Range("A1:T30000").AdvancedFilter Action:=xlFilterCopy, CriteriaRange:=Range("Z1:AB3") _
     , CopyToRange:=Range("AC1"), Unique:=False
 

投稿日時: 18/11/12 21:41:09
投稿者: FILETUBE

WinArrowさん、回答ありがとうございます。
なるほどそういう事ですか。
セル範囲をクリアというとclearメソッドですね。
そして、その後2のコードに変更して実行ですね。
検証してみます。
ありがとうございました。

投稿日時: 18/11/13 08:41:21
投稿者: FILETUBE

おはようございます。
WinArrowさん、ありがとうございました。
おかげ様で解決しました。