
WINDOWS XP
ACCESS 2002
MSDE
を使用しています。
ADOでストアドプロシージャを作成して
作成したストアドプロシージャをレコードソースとしたフォームを開こうとしたところ
エラーが発生してしまいます。
以下、ソースを大まかに示します
'-------------------------------------------------
sub test_Click()
On Error GoTo err_test
Dim Dname As New ADODB.Connection
Dname.Open
Dname.Execute "CREATE PROCEDURE q AS " + vbCrLf + _
" SELECT a FROM b WHERE (c = 1) ORDER BY d
DoCmd.OpenForm "F" ,
Exit Sub
err_test:
MsgBox "err : " + Err.Description
End Sub
'-------------------------------------------------
開こうとしているフォーム"F"のレコードソースには
作成したストアドプロシージャ"q"
を指定しています。
DoCmd.OpenForm で以下のエラーが発生します。
エラー番号は"2580"
メッセージは"このフォームまたはレポートで指定されているレコード ソース 'q' は存在しません。"
Access再起動して、ストアドプロシージャを作成せずにフォームを開くと
フォームは開けるのですが、
作成した直後にフォームを開きたいと考えております。
なにが原因なのでしょうか?
ご回答のほど、何卒よろしくお願いいたします。
No.1ベストアンサー
- 回答日時:
おそらくトランザクションのオートコミットを利用しているからとか?
トランザクションを明示してもだめ?
これでだめならフォームのリフレッシュかな?
Dname.Open STR_HOGE_CONNECTIOIN
Dname.BeginTrans
Dname.Execute STR_HOGE_SQL
Dname.CommitTrans
DoCmd.OpenForm STR_HOGE_FORM
ご回答ありがとうございます。
結局フォームを開く前にテーブルを動的に作成し、
VBA上でレコードを追加、
フォームを開いた時にレコードソースを定義しなおして
再表示。
という工程をへて、思ったような表示がなされるように
なりました。
ご協力いただきまして、本当にありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Accessでフォームから別フォー...
-
【ACCESS2003】サブフォーム名...
-
ユーザーフォーム上にアイコン...
-
VBA リストボックスをダブルク...
-
お客様から1MB未満の写真を送っ...
-
サブフォームの行ごとにコンボ...
-
ディスプレイ解像度より大きな...
-
ToolStripStatusLabelを固定し...
-
C# マルチディスプレイにて、...
-
アクセスVBA フォームのス...
-
Access 無操作の場合、自動で閉...
-
VBAにてメッセージボックスを最...
-
筋トレについて質問です 身長17...
-
メッセージボックスの背景色
-
PDFフォームに本日の日付を自動...
-
VBプログラムの終了
-
ExcelVBAでユーザーフォーム内...
-
ExcelVBAでフォーム内でブック...
-
リストボックスの選択解除
-
リストボックスをクリックする...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
お客様から1MB未満の写真を送っ...
-
Googleフォーム・複数人の申し...
-
アクセスVBA フォームのス...
-
VBAにてメッセージボックスを最...
-
VBA リストボックスをダブルク...
-
Accessでフォームから別フォー...
-
PDFフォームに本日の日付を自動...
-
accessで2つ以上のフォームを起...
-
VB.net(VB)で、フォームにExcel...
-
VBプログラムの終了
-
子フォームから親フォームのオ...
-
ExcelVBAでフォーム内でブック...
-
PDFフォーム内で日付計算したい...
-
サブフォームの新規レコードに...
-
メインフォームからサブフォー...
-
リストボックスの選択解除
-
サブフォームの行ごとにコンボ...
-
ASP.NETとC#でWebフォームを呼...
-
dbOpenTableとdbOpenDynaset
-
【ACCESS2003】サブフォーム名...
おすすめ情報