![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?e8efa67)
VBでSQLを発行、及び実行をし、
MDBを更新する処理を作成しています。
各SQLの実行(SELECT、INSERT、DELETE等)が
成功or失敗したかどうかを判定するには
どのようにすれば良いのでしょうか?
ソースのイメージとしては↓のような感じです。
Dim db As DAO.Database
'DB設定
Set db = OpenDatabase(DB名)
'SQL実行
db.Execute (DB内で作成したSQL)
【実行したSQLの正常終了の判定】
【実行メッセージ(成功or失敗)出力】
No.1ベストアンサー
- 回答日時:
On Error GoToを使用すれば、正常・異常の判断出来ます。
例
正常終了した場合、戻り値(True)でリターンされます。
異常終了した場合、ErrEndラベルにジャンプしエラー内容を
イミディエイトウインドウに表示し戻り値(False)でリターンされます。
Public Function DBSEL_PROC(SQL As String) As Boolean
On Error GoTo ErrEnd 'エラー処理を設定します。
DBSEL_PROC = False '関数の戻り値として異常終了を設定します。
'実行したいSQL文を書く
DBSEL_PROC = True '関数の戻り値として正常終了を設定します。
On Error GoTo 0 'エラー処理を無効にします。
Exit Function
ErrEnd:
'異常終了した場合のエラー内容を表示します。
Debug.Print Err.Description
Exit Function
End Function
No.3
- 回答日時:
何か質問が見えない部分があるのですが・・・
>成功or失敗したかどうかを判定するには
とあるけど、もしかして先にお二人が述べているような、エラー処理(On Error)をすでに組み込んでいるのでしょうか?
処理件数=0が失敗ということではないですよね?
No.2
- 回答日時:
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
歩いた自慢大会
「めちゃくちゃ歩いたエピソード」を教えてください。 長時間でも長距離でも結構です。
-
select文の戻り値を変数に格納したい。
Visual Basic(VBA)
-
ADOを使ったDBアクセス後のメモリ解放
その他(データベース)
-
アクセスVBAで既に開いているエクセルを閉じたい
Yahoo!ショッピング
-
-
4
テキストボックスにクエリ結果を表示させたい
その他(データベース)
-
5
VBとアクセスでSQL文に変数を使いたいのですが
Visual Basic(VBA)
-
6
CloseとDisposeの違い
Visual Basic(VBA)
-
7
SQL>UPDATEと同時にその件数をCOUNTする方法
その他(データベース)
-
8
カレントレコードが無い事を判定させる方法
Visual Basic(VBA)
-
9
Excel-vba 文字列と変数を連結して更に変数として扱いたい
その他(プログラミング・Web制作)
-
10
別フォームから戻ったときのイベント
Visual Basic(VBA)
-
11
Accessのフォーム上にレコード数とレコード番号の表示
その他(データベース)
-
12
アクセスで数値型のフィールドにNullをいれたい
その他(データベース)
-
13
VBAでループ内で使う変数名を可変にできないか。
Visual Basic(VBA)
-
14
どこにもフォーカスを当てたくない
Access(アクセス)
-
15
AccessVBAで実行時間を指定するには
Visual Basic(VBA)
-
16
アクセスクエリ(複数)→マクロ→エクセル出力(ワークシート別)
その他(パソコン・スマホ・電化製品)
-
17
レコードセット(ADO.Recordset)で処理レコードは何番目?
Visual Basic(VBA)
-
18
Access DAOのExecuteメソッドのオプション(RecordsetOptionEnum)に
Access(アクセス)
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・ゆるやかでぃべーと タイムマシンを破壊すべきか。
- ・「I love you」 をかっこよく翻訳してみてください
- ・歩いた自慢大会
- ・許せない心理テスト
- ・字面がカッコいい英単語
- ・昔のあなたへのアドバイス
- ・かっこよく答えてください!!
- ・あなたが好きな本屋さんを教えてください
- ・スタッフと宿泊客が全員斜め上を行くホテルのレビュー
- ・【大喜利】【投稿~8/27】 こんなガソリンスタンド二度と来るか!なぜそう思った?
- ・これ何て呼びますか Part2
- ・人生で一番思い出に残ってる靴
- ・【お題】動物のキャッチフレーズ
- ・【お題】甲子園での思い出の残し方
- ・ゆるやかでぃべーと すべての高校生はアルバイトをするべきだ。
- ・「それ、メッセージ花火でわざわざ伝えること?」
- ・自分用のお土産
- ・人生で一番お金がなかったとき
- ・一番好きなみそ汁の具材は?
- ・泣きながら食べたご飯の思い出
- ・ちょっと先の未来クイズ第1問
- ・ゴリラ向け動画サイト「ウホウホ動画」にありがちなこと
- ・初めて自分の家と他人の家が違う、と意識した時
- ・単二電池
- ・チョコミントアイス
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
UserForm1.Showでエラーになり...
-
VBAでfunctionを利用しようとし...
-
【VBA】ワークブックを開く時に...
-
String""から型'Double'への変...
-
Excel vbaについての質問
-
実行時エラー'-2147467259(8000...
-
お助けください!VBAのファイル...
-
実行時エラー 438 の解決策をお...
-
JAVA Jasper Report でのQRコー...
-
ACCESSで値を代入できないとは?
-
Excel ピボットテーブル平均・...
-
On ErrorでエラーNoが0
-
文字列内で括弧を使うには
-
【VBAエラー】Nextに対するFor...
-
マクロで"#N/A"のエラー行を削...
-
データベース操作時エラーについて
-
VBA データ(特定値)のある最...
-
VBA エクセル で FIND でのエラ...
-
pythonのopenpyxlについて
-
実行時エラー´5854´ 文字列型パ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
UserForm1.Showでエラーになり...
-
String""から型'Double'への変...
-
VBAでfunctionを利用しようとし...
-
マクロで"#N/A"のエラー行を削...
-
お助けください!VBAのファイル...
-
On ErrorでエラーNoが0
-
実行時エラー'-2147467259(8000...
-
文字列内で括弧を使うには
-
【VBA】ワークブックを開く時に...
-
実行時エラー 438 の解決策をお...
-
Excel vbaについての質問
-
【VBAエラー】Nextに対するFor...
-
ApplicationとWorksheetFunctio...
-
フランスの生年月日(jj/mm/aaaa)
-
VBでSQL文のUPDATE構文を使った...
-
VBA データ(特定値)のある最...
-
インポート時のエラー「データ...
-
ACCESSで値を代入できないとは?
-
ActiveCell.FormulaR1C1の変数
-
「実行時エラー '3167' レコー...
おすすめ情報