掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
DAOレコードオブジェクトの接続状態を取得するには? (ID:78978)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
現在、Accessで開発を行っているのですが 簡単なエラー処理を含める際に、DAOオブジェクトの後始末について困っています。 下記のようなコードを書いた際に途中でエラーが発生し、 そのエラーが発生した個所ですでに"objREC"や"objDB"が解放されてしまっている場合 当然ですが、エラー処理の部分で再度解放しようとするので、エラーが発生します。 オブジェクトの解放忘れをなくしたいので 出来る限り、エラー処理の中で解放をしたいので 各オブジェクトの、現在の接続状態を知ることが出来れば エラー処理の中で、もし、"objREC"が解放されていなければ、解放 解放されていれば、再度解放はしない、と考えたのですが そういうプログラムは不可能でしょうか? Public Function CheckConnection() As Long ' オブジェクト宣言 Dim objDB As DAO.Database Dim objREC As DAO.Recordset ' エラートラップ開始 On Local Error GoTo ERR_CheckConnection: ' DBオブジェクト初期化 Set objDB = CurrentDb() ' レコード取得 strSQL = "SELECT * FROM テストテーブル" Set objREC = objDB.OpenRecordset(strSQL) ' ここで何しかの処理をする 〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜 〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜 Call objREC.Close Call objDB.Close Set objREC = Nothing Set objDB = Nothing On Local Error GoTo 0: Exit Function ' エラー処理 --------------------- ERR_CheckConnection: ' エラーメッセージ表示 Call ErrMsgBox(Err.Description, "CheckConnection") Call objREC.Close Call objDB.Close Set objREC = Nothing Set objDB = Nothing End Function
←解決時は質問者本人がここをチェックしてください。
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.