• ベストアンサー

エクセルの変数について

お世話になります。 下のマクロについてどうしてもわからないので教えてください。 開始日、最終日をinputboxにて日付を入れてオートフィルターで結果をだしたいのですが、どうしてもオートフィルター内のmyfirstdateとmylastdateに変数の値が入りません。 どこが間違っていますでしょうか? お願いします。 Sub Macro1() ' ' Macro1 Macro ' マクロ記録日 : 2006/12/7 ユーザー名 : AAAAAA ' Dim myfirstdate As Date Dim mylastdate As Date myfirstdate = InputBox("開始日を入力してください。" & vbCrLf & "例)12/1") mylastdate = InputBox("最終日を入力してください。" & vbCrLf & "例)12/31") Selection.AutoFilter Field:=2, Criteria1:=">=myfirstdate", Operator:=xlAnd, _ Criteria2:="<=mylastdate" ' End Sub

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

  • ベストアンサー
  • driverII
  • ベストアンサー率27% (248/913)
回答No.1

""の中にある為、変数ではなく"myfirstdate"という文字列になってしまっています。 ">=" & myfirstdate とするか、だめならFormatなどで文字列にすれば、うまくいきます。 mylastdate についても同様です。

yhg
質問者

お礼

ありがとうございます。できました!

その他の回答 (1)

  • zap35
  • ベストアンサー率44% (1383/3079)
回答No.2

">=myfirstdate"自体が文字列になっています Criteria1:=">=" & myfirstdate のようにしないと変数を条件に設定できません

yhg
質問者

お礼

ありがとうございます。できました!

関連するQ&A