エラー割り込みを無視するには in VBA

VB6,VBA,VBS,EXCEL,DOS,BAT,WSH,WORDの小技メモ

HTML/ CSS/ CGI-Perl/ JavaScript/ JavaApplet/ AccessUp/ Internet/ EnglishLearn/ ちゃいちゃん天使/ 天使メッセージ/ 飯田ワールド/ 結城ワールド/ プロフィール/ WEB相談室/ WEBアンテナ/ 燈明日記/ Perlノート/ 漢字起源/ yahoo

はじめに

本ページは、ウインドウズ系全般のティプスメモです。

そう、はじめはVB系のティプスメモだったのですが…いつの間にか、ウインドウズ系全般のティプスメモになってしまいました。

ちなみに、ティプス(Tips)とは、マニュアルに書かれていない技法や裏わざのことですが、本ページでは、私が経験してこれはと思ったノウハウのメモになっています。

尚、以下は本サイトの最新情報(ブログ)です。

それでは、本ページが何かのお役に立てれば幸いです。ごゆっくりご覧ください。

2008-12-28 エラー割り込みを無視するには in VBA

たとえば、任意のセルに入力規則を設定すると、そのプロパティには正常アクセスすることができます。

しかし、ループ等で任意のセルにアクセスで、入力規則での設定がされていないセルのそのプロパティにアクセスすると、無碍なく以下のエラー割り込みが発生してプログラムが落ちます。

実行時エラー'1004':

アプリケーション定義またはオブジェクト定義のエラーです。

これ、エラー認識をIf文で、なんとか処理をしたいのですが、いろいろ試しましたが、不可能のようです。

なので、エラー割り込みを無視するようにすればいい訳で、それは以下のようにします。

On Error Resume Next

この一行をモジュールの先頭にいれます。

すると、エラー割り込みが起こっても無視し、次の実行ステップを行います。


ただし、これだとすべてのエラー割り込みが無視されるので、無視したいエラー番号をErr.Numberで調べて、これだけを無視するようにします。

On Error GoTo Handler 
:
:
Handler:
   If Err.Number = 『無視したいエラー番号』 Then
      Resume Next
   End If
End Sub

尚、Excel2000とExcel2003のVBAで確認しています。

おわりに

以下のページには、すべてのTIPSがあります。もしよろしければ、どうぞ!

尚、ご感想、ご意見、誤字、脱字、間違い等がありましたら遠慮なくVB-TIPS掲示板へご指摘ください。

人のよいところをどんどん見つけよう