アクセスで下記コードを実行すると「実行時エラー3131 FROM 句の構文エラーです」と出てしまいます。
どうすればよいでしょうか?
Private Sub コマンド210_Click()
Dim db As DAO.Database
Dim rs As DAO.Recordset
Dim vsql As String
Dim i As Variant
Set db = CurrentDb()
i = 見積ID
vsql = "select * from T-見積書 where 見積ID = i"
Set rs = db.OpenRecordset(vsql, dbOpenDynaset)
If MsgBox("削除しますか?", vbYesNo) = vbYes Then
rs.Delete
End If
DoCmd.GoToRecord , , acPrevious
rs.Close
db.Close
End Sub
No.6
- 回答日時:
>>データ型は短いテキストです
そっか、テキストボックスといってたから、抽出条件は文字型(文字列)なんですね。
文字列の場合には=の後の指定値は'で囲まないとなりません。
ほぼ全てのデータベースで同じです。
T-見積書の-は使え無いから、テーブル名はT見積書だとして
vsql = "select * from T見積書 where 見積ID = i"
↓
vsql = "select * from T見積書 where 見積ID ='" & i & "'"
(iの中身を'で囲う。ABCなら'ABC')
No.4
- 回答日時:
>>iにはフォーム上に表示されているテキストボックスの見積IDの値を代入しています
ではデータの型が違うのでは?
列名の見積IDが数値型や日付/時刻型とか、全角/半角の違いとか。
手動のクエリで確認出来ませんか
Dim i As Variantを、自分の思っている型宣言にして見るとか・・・。
データ型は短いテキストです
全角半角もスペース含め確認しました
dim i as stringで試してみても変わらず…
手動のクエリの確認方法が分からないのですがどう確認するのでしょうか?
No.3
- 回答日時:
データベス列名の見積IDの型が文字なのにクエリで数値を指定してるとか、その逆とかです。
>>i = 見積ID
これは、VBAとしてはどちらも変数です。
見積IDと言う変数の中身をiと言う変数に代入しています。
列名の見積IDでは無いですよ、pg内の変数として扱われます。
このプログラムを見ると、見積IDと言う変数に何もセットしていなくて、イキナリiに中身を代入しています。
言葉足らずでした!
iにはフォーム上に表示されているテキストボックスの見積IDの値を代入しています
i = 見積ID
msgbox i
と実行するとテキストボックスに入力されているデータが呼び出し出来るので代入は出来てるかと思います
No.2
- 回答日時:
何か変なんですが・・・・・。
vsqlの中には、SQLが文字列として解決してる値、つまり、変数なんか使え無いのですが・・・・・。
>>vsql = "select * from T-見積書 where 見積ID = i"
そもそも、ここが変では有りませんか?
where句が "見積ID = i" と言う文字列。
=の後ろは"値"のはず・・、これだと値がiですよ。
vsql = "select * from T-見積書 where 見積ID =" & i
としないと変。
そうなんですか!見積ID=iで該当するデータが無いということなんですね
こちらも修正しました!
ただ、またエラーが出てきてしまいました
抽出条件でデータ型が一致しません。と出てしまいます。
デバッグすると下のコードが黄色く表示されます
Set rs = db.OpenRecordset(vsql, dbOpenDynaset)
見積IDのデータ型が短いテキストだと別の書き方があるのでしょうか?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Access(アクセス) docmd.gotorecordを起動するには 5 2022/06/17 15:20
- Access(アクセス) アクセス テーブルの空白を変数に置換するボタンが作りたい 4 2022/07/08 11:19
- Access(アクセス) DoCmd.SearchForRecord が動かない時の解決方法 3 2022/07/22 15:31
- Visual Basic(VBA) ACCESS DAO で不要なテーブルのフィールド(列)の削除 4 2022/06/23 12:13
- Visual Basic(VBA) access count数を変数に格納 2 2022/03/30 19:21
- Access(アクセス) アクセス レポートを開いたときにパラメーターの自動入力がしたい 4 2022/11/30 11:21
- Access(アクセス) アクセス where句を使用して複数条件抽出をするには 2 2022/08/29 13:24
- Visual Basic(VBA) VBA★PDFをPDFアプリで印刷しようと思っていますが上手くゆきません 1 2022/06/06 22:04
- Visual Basic(VBA) Excel vbaについての質問 3 2023/04/18 16:14
- Visual Basic(VBA) Excelで下記のようにマクロを作ったところ、一回目は実行できたのですが、二回目以降「実行時エラー1 1 2022/03/25 08:08
このQ&Aを見た人はこんなQ&Aも見ています
-
これまでで一番「情けなかったとき」はいつですか?
これまでの人生で一番「情けない」と感じていたときはいつですか? そこからどう変化していきましたか?
-
一回も披露したことのない豆知識
あなたの「一回も披露したことのない豆知識」を教えてください。 「そうなんだね」と「確かに披露する場所ないね」で評価します。
-
「これはヤバかったな」という遅刻エピソード
寝坊だったり、不測の事態だったり、いずれにしても遅刻の思い出はいつ思い出しても冷や汗をかいてしまいますよね。
-
この人頭いいなと思ったエピソード
一緒にいたときに「この人頭いいな」と思ったエピソードを教えてください
-
うちのカレーにはこれが入ってる!って食材ありますか?
カレーって同じルーから作っても、家庭によって入っているものや味が微妙に違っていて面白いですよね! 「我が家のカレーにはこれが入ってるよ!」 という食材や調味料はありますか?
-
アクセス VBAについて FROM句の構文エラー
Access(アクセス)
-
Access2010 「演算子がありません」エラー
その他(データベース)
-
SQL文で パラメータが少なすぎます エラー
Access(アクセス)
-
-
4
FROM句の構文エラー ACCESS SQL
その他(データベース)
-
5
access2003 クエリSQL文について
その他(プログラミング・Web制作)
-
6
AccessのSQLで、FROM句の構文エラー
その他(データベース)
-
7
「FROM 句の構文エラーです」が表示される
Visual Basic(VBA)
-
8
ACCESS VBAの実行時エラーなんですが
PowerPoint(パワーポイント)
-
9
アクセスのエラー「クエリには出力フィールドが1つ以上必要です。」
その他(Microsoft Office)
-
10
アクセスで#エラーを表示させない方法は?
Access(アクセス)
-
11
Accessで別テーブルの値をフォームに表示したい
その他(データベース)
-
12
実行時エラー 3265「要求された名前、または序数
Visual Basic(VBA)
-
13
Access 2010で実行時エラー3061
その他(Microsoft Office)
-
14
VBでSQL文のUPDATE構文を使った時のエラーについて
Visual Basic(VBA)
-
15
構文エラー:演算子がありません。 ACCESS SQL
その他(データベース)
-
16
パラメータが少なすぎます。1を指定して下さい。""
Excel(エクセル)
-
17
アクセスでテキストボックスの値が空白だったら
Access(アクセス)
-
18
accessの SQL文 INSERT命令
Access(アクセス)
-
19
Access Error3061 パラメータが少なすぎます。4を指定してください。
Access(アクセス)
-
20
ACCESSでテーブルにあるチェックボックスを一括でYesにする方法を教えてください
Access(アクセス)
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・【大喜利】【投稿~11/22】このサンタクロースは偽物だと気付いた理由とは?
- ・お風呂の温度、何℃にしてますか?
- ・とっておきの「まかない飯」を教えて下さい!
- ・2024年のうちにやっておきたいこと、ここで宣言しませんか?
- ・いけず言葉しりとり
- ・土曜の昼、学校帰りの昼メシの思い出
- ・忘れられない激○○料理
- ・あなたにとってのゴールデンタイムはいつですか?
- ・とっておきの「夜食」教えて下さい
- ・これまでで一番「情けなかったとき」はいつですか?
- ・プリン+醤油=ウニみたいな組み合わせメニューを教えて!
- ・タイムマシーンがあったら、過去と未来どちらに行く?
- ・遅刻の「言い訳」選手権
- ・好きな和訳タイトルを教えてください
- ・うちのカレーにはこれが入ってる!って食材ありますか?
- ・おすすめのモーニング・朝食メニューを教えて!
- ・「覚え間違い」を教えてください!
- ・とっておきの手土産を教えて
- ・「平成」を感じるもの
- ・秘密基地、どこに作った?
- ・【お題】NEW演歌
- ・カンパ〜イ!←最初の1杯目、なに頼む?
- ・一回も披露したことのない豆知識
- ・これ何て呼びますか
- ・初めて自分の家と他人の家が違う、と意識した時
- ・「これはヤバかったな」という遅刻エピソード
- ・これ何て呼びますか Part2
- ・許せない心理テスト
- ・この人頭いいなと思ったエピソード
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・好きなおでんの具材ドラフト会議しましょう
- ・餃子を食べるとき、何をつけますか?
- ・あなたの「必」の書き順を教えてください
- ・ギリギリ行けるお一人様のライン
- ・10代と話して驚いたこと
- ・大人になっても苦手な食べ物、ありますか?
- ・14歳の自分に衝撃の事実を告げてください
- ・家・車以外で、人生で一番奮発した買い物
- ・人生最悪の忘れ物
- ・あなたの習慣について教えてください!!
- ・都道府県穴埋めゲーム
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
実行時エラー3131 FROM 句の構...
-
テキストボックスに入れた内容...
-
Accessのテーブルへ複数の主キ...
-
SELECT文を発行して、ACCESSよ...
-
PEAR でprepareメソッドがエラーに
-
エラー3011
-
SQL文が実行できません
-
データフォームウィザードで追...
-
VBAをつかってクエリの情報を抽...
-
insert1つの処理でもトランザ...
-
MySQLでデータベースにデータin...
-
Pro*Cの構文エラー
-
【ASP.NET】MySQLのテーブルレ...
-
php MySQL で、更新ボタンを押...
-
PHP 関数呼び出し後に配列添字...
-
phpでmysqlを使ってデータベー...
-
mysql_fetch_array の関数について
-
stringaddslashes 半角¥が消える
-
セッションを使ったログインペ...
-
UPDATE文のWHERE句について
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
実行時エラー3131 FROM 句の構...
-
VBAをつかってクエリの情報を抽...
-
SQL文が実行できません
-
テキストボックスに入れた内容...
-
PHP4でのSmarty派生クラスの定...
-
エラー3011
-
Accessのテーブルへ複数の主キ...
-
LocalのNotesメールDBをVBAで参...
-
codeigniter 複数モデルでトラ...
-
SQL文の実行に失敗しました???
-
PEAR でprepareメソッドがエラーに
-
in 'where clause'のエラーの理由
-
ADOを使いDBへ読み書きしたい
-
ブラウザにテーブルのレコード...
-
ASPでRecordCountが使用でき...
-
時刻型にNULLでセットしたい
-
PHP5でpostgresqlのデータベー...
-
こんにちは、PHP初心者です。
-
PHP(PDO)でDBの情報を完全一...
-
Access 2000 の VB での テーブ...
おすすめ情報