Microsoft Access Club Access超初心者対象Forum Access初級者対象Forum Access初・中級者対象Forum Access VBA Tips Forum DAO、ADO、SQL Forum

     

リストへもどる

投稿記事の一括表示

タイトルVBAからクエリを実行しようとするとエラーが発生してしまいます
記事No16862
投稿日: 2017/04/06(Thu) 10:54
投稿者tana
OS:Windows7
Access Version:Access2003

お世話になります。
VBAでパラメータ付きのSQLを実行したいと考えています。
SQLの内容としては対象テーブル内のpara1に該当する型番の金額をpara2に書き換える更新クエリで
手動で実行することは問題なくできています。

ただVBAでこのクエリを実行しようとすると
Set qdf = dbs.QueryDefs("更新クエリ1")
の部分でエラーが発生してしまいます。

実行時エラー '91':
オブジェクト変数または With ブロック変数が設定されていません。


コードは一部省略していますが下記の感じで書いています。
自分なりに原因を調べてみたのですが行き詰ってしまっているのでご教授頂ければ幸いです。
宜しくお願いいたします。


Private Sub コマンド0_Click()
Dim para1 As String
Dim para2 As Integer
Dim dbs As Database
Dim qdf As QueryDef

Set dbs = CurrentDb
Set qdf = dbs.QueryDefs("更新クエリ1")

para1 = "ABC"
para2 = 398

With qdf
.Parameters("型番") = para1
.Parameters("金額") = para2
.Execute
End With

Set qdf = Nothing
Set dbs = Nothing

End Sub

タイトルRe: VBAからクエリを実行しようとするとエラーが発生してしまいます
記事No16863
投稿日: 2017/04/06(Thu) 12:00
投稿者AccessKid
"更新クエリ1"のSQLを提示してください。

タイトルRe^2: VBAからクエリを実行しようとするとエラーが発生してしまいます
記事No16864
投稿日: 2017/04/06(Thu) 14:22
投稿者tana
> "更新クエリ1"のSQLを提示してください。

SQLは下記の通りです。


ALTER PROCEDURE 更新クエリ1

@型番 string,
@金額 int

AS
UPDATE T_製品リスト
SET 金額 = @金額
WHERE 型番 = @型番

RETURN

タイトルRe^3: VBAからクエリを実行しようとするとエラーが発生してしまいます
記事No16865
投稿日: 2017/04/22(Sat) 17:07
投稿者interkulturo
参照先http://www.interkulturo.net
> > "更新クエリ1"のSQLを提示してください。
>
> SQLは下記の通りです。
>
>
> ALTER PROCEDURE 更新クエリ1
>
> @型番 string,
> @金額 int
>
> AS
> UPDATE T_製品リスト
> SET 金額 = @金額
> WHERE 型番 = @型番
>
> RETURN

情報ありがとうございます。

- 以下のフォームから自分の投稿記事を修正・削除することができます -
処理 記事No パスワード

ページの先頭へ 前ページへ戻る