• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:VBS mdb参照時にテーブルor列が存在しない場合のエラー処理)

VBS mdb参照時にテーブルor列が存在しない場合のエラー処理

このQ&Aのポイント
  • SQLでテーブルや列を参照しようとした際に存在しない場合のエラー処理について
  • VBS mdbのデータベース参照時に存在しないテーブルや列への対処方法
  • テーブルや列が存在しない場合のVBS mdb参照時のエラー処理

質問者が選んだベストアンサー

  • ベストアンサー
  • nda23
  • ベストアンサー率54% (777/1416)
回答No.2

テーブル名や列名を間違えるというのは基本的にバグなので、救済 する必要はないと思います。 どうしてもエラーハンドリングする場合は以下の通り On Error Resume Next Set rec = ado.Execute(query) If Err.Number = 0 Then   target = rec.Fields(field).Value   If Err.Number = 0 Then     If IsNull(target) = True then       ~     End If   End If   rec.Close End If If Err.Number <> 0 Then   MsgBox Err.Description, vbCritical, "エラー" End If エラーの起こりそうな処理の後で、Err.Numberを調べます。 これが0の場合に次のステップへ進むようにしましょう。 http://msdn.microsoft.com/ja-jp/library/cc392399.aspx

CrownMiffy
質問者

お礼

ありがとうございます。 > If Err.Number = 0 Then このコードで思い通りにできました。 おっしゃる通り、テーブル名・列名が取得できないような事態はまず考えられないのですが、せっかくなのでエラーチェックは残したいと思います。

その他の回答 (1)

  • pkh4989
  • ベストアンサー率62% (162/260)
回答No.1

以下の方法で、出来ませんか。 On Error Resume Next Set rec = ado.Execute(query) Do Until rec.EOF   'レーコードが存在する時の処理   target = rec.Fields(field).Value   If IsNull(target) = True Then     '   End If   rec.MoveNext Loop rec.Close 'レーコードが存在しない時の処理

CrownMiffy
質問者

お礼

私には難しかったようです。 せっかく回答してくださったのに活かすことができず申し訳ないです。

関連するQ&A