重要なお知らせ

「教えて! goo」は2025年9月17日(水)をもちまして、サービスを終了いたします。詳細はこちら>

電子書籍の厳選無料作品が豊富!

ACCESS VBAの記述でエラーになります。
教えてください。

Private Sub cmd抽出_Click()
Dim db As DAO.Database
Dim rs As DAO.Recordset
Dim mySQL As Long '抽出条件

Set db = CurrentDb()

'レコードセットを作成
mySQL = "SELECT * FROM T_貸付明細 " _
& "WHERE 顧客ID ='" & Me!txtID & "';"

Set rs = db.OpenRecordset(mySQL, dbOpenDynaset)

'サブ フォームに表示
Set Me!sub結果.Form.Recordset = rs
'
Me!sub結果.Form!日付.ControlSource = "日付"
Me!sub結果.Form!貸付.ControlSource = "貸付"
Me!sub結果.Form!受領.ControlSource = "受領"
Me!sub結果.Form!利息.ControlSource = "利息"
Me!sub結果.Form!元金入金.ControlSource = "元金入金"
Me!sub結果.Form!貸付残高.ControlSource = "貸付残高"
Me!sub結果.Form!次支払日.ControlSource = "次支払日"

End Sub

上記の記述で「型が一致しません」とエラーが出ます。

'レコードセットを作成
mySQL = "SELECT * FROM T_貸付明細 " _
& "WHERE 顧客ID ='" & Me!txtID & "';"
ここの記述がLongになってない事の間違いだと察するのですが、正しい記述方法を教えていただけませんか。

A 回答 (2件)

遅くまで大変ですね。



手元にVBA環境がないので、未確認で申し訳ないですが・・・

これで試してみてください。

mySQL = "SELECT * FROM T_貸付明細 " _
& "WHERE 顧客ID = " & Cstr(Me!txtID) & ";"
    • good
    • 0
この回答へのお礼

ご回答ありがとうございます。
ずいぶん遅くまで頑張ってますね。
私は質問をしておきながら寝ちゃいました。

imogasiさんのご回答と合わせ技でうまく出来ました。
まだ充分にVBAが理解が出来てないのですが、とにかく慣れろ!で頑張ります。

お礼日時:2002/04/13 08:15

Dim mySQL As Long '抽出条件 と有りますが、SQL文は


あくまでStringで定義するのではないでしょうか。
部分的ですみません。Dim mySQL As String '抽出条件
では。そのため””で括(くく)っているのでは。
    • good
    • 0
この回答へのお礼

ご回答ありがとうございます。

その通りです。
うまく出来ましたのでまずはお礼まで。

今後ともよろしく。

お礼日時:2002/04/13 08:18

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!