- ベストアンサー
オートフィルターの使い方
マクロでオートフィルタを使おうと思っているのです。 作成したリストの中で、日付でフィルタしようと思い 下記を作成してみましたがうまくいきません。 Worksheets("シート名").Range("A2").AutoFilter Field:=30, Criteria1:="<=2004/9/30", Operator:=xlAnd = 1, Criterial2:=">=2004/9/1" 条件と致しましては任意の期間(例:2004/9/1~2004/9/30)を抽出条件としたいのですが・・・ 又、セルには空白も存在します。 宜しくお願いいたします。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
No.1です。 だから、 Operator:=xlAnd = 1 これの件は?
その他の回答 (2)
- imogasi
- ベストアンサー率27% (4737/17069)
Sub test01() Range("A1:A8").AutoFilter Field:=1, Criteria1:=">=2004/9/2", Operator:=xlAnd, _ Criteria2:="<=2004/9/23" End Sub で、私のA列に作った例データでは上手く行きました。 気になるのは (1)Range("A2").・・ (2)Operator:=xlAnd = 1, (#1でご指摘) (3)Field:=30(30で良い?)
お礼
大変参考になりました 有難うございます
- maruru01
- ベストアンサー率51% (1179/2272)
こんにちは。maruru01です。 >うまくいきません。 どううまくいかないのか、が重要なのですよ。 エラーになる? 結果が希望と違う?(どうなってしまうのか?) etc・・・ ざっとみたところ、明らかに、 Operator:=xlAnd = 1 ↓ Operator:=xlAnd ですが、これは単なる記載ミスでしょうか?
補足
すいません・・・言葉足らずで・・ Worksheets("シート名").Activate Worksheets("シート名").Range("A2").AutoFilter Field:=30,Criteria1:=">=2004/9/1"だとエラーが出ないんです。でも、それだと2004/9/1以降で抽出してしまいますので抽出条件を2004/9/1~2004/9/30に指定したいんです。お分かりいただけましたか? 宜しくお願いいたします。
お礼
Operator:=xlAnd = 1を直してうまくいきました 有難うございました