【初月無料キャンペーン中】gooドクター

アクセス初心者です。

更新ボタンでテーブル(T_住所)の更新をしたいのですがFROM構文のエラーが出ます。
シンプルな形にしてトライしたのですがここでエラーが出ます。
フィールドは名前、住所、電話番号だけにしてみました。[ ]でフィールド名を囲ったりしてもダメでした。VBAは以下です。ご教授願います。

Private Sub 更新_Click()
Dim db As DAO.Database
Dim rs As DAO.Recordset
Dim vSQL As String


Set db = CurrentDb()

vSQL = "SELECT * FROM T_住所 WHERE 名前= Me.Txt名前"

Set rs = db.OpenRecordset(vSQL, dbOpenDynaset)

rs.Edit



rs!名前= Me.Txt名前
rs!住所 = Me.Txt住所
rs!電話番号 = Me.Txt電話番号

rs.Update

rs.Close
db.Close
End Sub

質問者からの補足コメント

  • ありがとうございました。
    残念ながらこのVBAでもFROM句の構文エラーが出てしまいます。
    なにか考えられることはありますでしょうか?
    改めてフィールド名やデータ型(短いテキスト)なども確認してみたのですが・・・・

      補足日時:2019/05/07 07:45
gooドクター

A 回答 (3件)

No.2 です。



> T_住所 WHERE
     ↑
スペースが全角になっているようですね。
    • good
    • 1
この回答へのお礼

解決しました

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

お礼日時:2019/05/07 13:08

vSQL = "SELECT * FROM T_住所 WHERE 名前= Me.Txt名前"


 ↓
vSQL = "SELECT * FROM T_住所 WHERE 名前= '" & Me.Txt名前 & "'"

Debug.Print VSQL
で、組み立てた SQL の内容を確認するようにしましょう。
    • good
    • 1

詳しい訳ではないですけど。



SELECT は抽出する際の物のはず。
更新したいなら UPDATE を調べてみては?
    • good
    • 0
この回答へのお礼

ありがとうございます。
最初UPDATEでトライしたのですがうまく動かなかったので、シンプルにSELECTから初めて見ました。
bonaronさんの指摘でスペースの全角が問題点だとわかりました。たぶんUPDATEでエラーが出た問題もここだったと思われます。いずれにしてもアドバイスいただきありがとうございました。

お礼日時:2019/05/07 13:12

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

このQ&Aを見た人はこんなQ&Aも見ています

gooドクター

このQ&Aを見た人がよく見るQ&A

人気Q&Aランキング