• ベストアンサー

ADO フィルタ 変数

Sub test() Dim 月 As Long cn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & CurrentProject.FullName rs.Open "Tテーブル", cn, adOpenStatic, adLockPessimistic 月 = 5 rs.Filter = " 処理日 = '" & #"& 月 &"/29/2009# & "'" MsgBox rs.RecordCount Set rs = Nothing Set cn = Nothing End Sub のように月に変数を入れ、フィルタをかけたいのですが 上記のコードでエラーになってしまいます。 アドバイスよろしくお願いします。

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

  • ベストアンサー
  • mitarashi
  • ベストアンサー率59% (574/965)
回答No.1

CurrentProjectをお使いという事は、Access上で実行するのだと思いますが、とすると下記で良いと思います。 Sub test() Dim cn As ADODB.Connection Dim rs As ADODB.Recordset Dim 月 As Long Set cn = CurrentProject.Connection Set rs = New ADODB.Recordset rs.Open "Tテーブル", cn, adOpenStatic, adLockPessimistic 月 = 5 rs.Filter = "処理日= #" & CStr(月) & "/29/2009#" MsgBox rs.RecordCount rs.Close: Set rs = Nothing cn.Close: Set cn = Nothing End Sub

quygquygqu
質問者

お礼

すいません、 これではできませんでした、、、

quygquygqu
質問者

補足

と思ったらできました! ご回答ありがとうございます。

その他の回答 (1)

  • 30246kiku
  • ベストアンサー率73% (370/504)
回答No.2

rs.Filter = " 処理日 = '" & #"& 月 &"/29/2009# & "'" ↓以下の変更でどうなりますか rs.Filter = " 処理日 = #" & 月 & "/29/2009#"

quygquygqu
質問者

お礼

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