• ベストアンサー

デバッグでエラートラップが効かない

以下のようなトラップで EXEを実行させると ファイルがないことで起こる エラーは発生しないのですが デバッグ実行すると トラップが効かず ファイルが存在しません というエラーがでてしまいます エラートラップが効かないようなのですが なぜでしょう? On Error GoTo KILLERROR Kill "file" KILLERROR: Resume Next

  • be-be
  • お礼率70% (39/55)

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

  • ベストアンサー
  • tom777
  • ベストアンサー率77% (14/18)
回答No.4

VBの設定で [ツール]-[オプション]の全般タブで エラートラップを”エラー発生時に中断”にすると On Errorでトラップしていてもエラーが出ます。 一度チェックしてみてください。

be-be
質問者

お礼

まさしくそのお通りでした エラーの起きてる環境では [ツール]-[オプション]の全般タブで エラートラップを”エラー発生時に中断” になっていました ありがとうございました

その他の回答 (3)

  • fuji1
  • ベストアンサー率29% (109/371)
回答No.3

やっぱり、判りにくいです。 kill 文の直前に On error 句をもっていってもだめですか? 別ルートで On Error が消えているかもしれません。

be-be
質問者

お礼

説明が下手で申し訳ありませんでした [ツール]-[オプション]の全般タブで エラートラップを”エラー発生時に中断” になっておりました

  • fuji1
  • ベストアンサー率29% (109/371)
回答No.2

こんばんわ。 また出てきました。 とりあえず、ファイルアクセスをしているところにブレークポイント(F9)をセットして、その後ステップ実行(F8)がいいのではないでしょうか? RUN (F5) しちゃうと、どこだかわからなくなりますよね。 とにかく、場所を特定しましょう。

be-be
質問者

お礼

すばやい解答ありがとうございます 説明が足らなくて申し訳ないのですが ステップ実行すると トラップへ飛ばず そのままファイルアクセスでエラーがでます Ctrl+F9で On Error Goto へ戻してやっても 同じところで同じエラー どうもとラップが効いていないのです

  • fuji1
  • ベストアンサー率29% (109/371)
回答No.1

こんにちは。 Win 2000 で VB6を使っています。 上のソースを、Form Load に書いたら、エラーが出ませんでした。 環境を教えてください。 OS/VBバージョン/エラーが出るイベント(フォームの位置)

be-be
質問者

お礼

解答ありがとうございます 実はそのとおりで 私の環境でも これだけをコーディングして動かすと ちゃんと動くのです 私もWin 2000 で VB6を使っています ですから 他の部分が原因であることは明らかなのですが 全て載せるわけにもいかず その部分の見当がつかないので 同じような現象をご存知の方がいらっしゃればと思ったのですが 難しいでしょうね

関連するQ&A

  • VBA トラップを再開させるには?

    一度ご質問させていただいたのですが、 どうも上手くできなくて・・・ <連番の付いた複数のFileを順に呼び出すプログラム> ForループでFileナンバーをインクリメントして行く方法で作成。 もしFileが存在しない場合、ラベルで警告して継続させたい。 この時、On Error GoTo をループ内で使って処理をしたのですが、 1回目は上手く行き、2回目がトラップできませんでした。何故?? Fileが存在しない場合、メッセージを出しますが、 2回目にエラーが発生したときは、トラップに掛かりません。 (***Fileが見当たりません…のコーションラベルが表示される) Resumeを使っても、エラーが発生した"後"から開始されるので それでは、Fileを開きにすら行きません。 何か、良い方法はないでしょうか???? Sub FileOpen() Dim N As Integer   For N=1 To 100 On Error GoTo ErrorRtn:   Workbooks.OpenText Filename:= N & ".csv" ErrorRtn: MsgBox  "Fileが有りません" Next End sub

  • VBA エラートラップができない

    <連番の付いた複数のFileを順に呼び出すプログラム> ForループでFileナンバーをインクリメントして行く方法で作成。 もしFileが存在しない場合、ラベルで警告して継続させたい。 この時、On Error GoTo をループ内で使って処理をしたのですが、 1回目は上手く行き、2回目がトラップできませんでした。何故?? Sub FileOpen() Dim N As Variant  For N=1 To 100   On Error GoTo ErrorRtn:   Workbooks.OpenText Filename:= N & ".csv" ErrorRtn: MsgBox  "Fileが有りません"  Next End sub

  • VBAでon error goto文がきかない

    エラーが発生しているにもかかわらずon error gotoが実行されません。 ファイルの存在チェックで存在したときは消すようにプログラムしたはずなのに。同僚いわく「何かOSのファイルが壊れているのでは?」とのこと。OSの再インストールでもすればいいのでしょうか?できれば参照設定かなんかでファイルをアサインしてon error gotoが実行されるようにしたいのですが・・・ムリですか?

  • on error 処理に関して

    on error goto での処理ルーチン内で、 さらに on error goto を出すことは可能でしょうか。 それとも、一度on errorを設定すると、エラーが発生した後では変更は不可なのでしょうか。 やりたいことは、 1回目と、2回目、3回目以降でやることとを変えたいのです。 例えば、メッセージを変えるとか。 この場合、 エラー処理の中で、何回目かを聞くことで、メッセージを変えることは出来ると思うのですが、 それはやらず、 他にも色々やることが多いので、別処理として飛びたいのです。 以下のようなイメージです。 err1: on error goto err2 resume next err2: on error goto err3 resume next err3: resume next 宜しくお願いします。

  • VC++で作成したDLLのデバッグ

    VC++6.0で作成したDLLファイルのデバッグ作業でVBでコンパイルした EXEファイルを使うと、例外エラーが発生してしまいます。 EXEファイルにデバッグ情報が書き込まれるのでしょうか? 次からそのEXEファイルを利用すると、やはり例外エラーがおきます。 (それに長い間気づかず、ずっとバグ探しをしてました。) VC++のDLLファイルのデバッグモードはVBのEXEファイルでは利用できないのでしょうか?

  • VB2005でデバッグ実行できない

    VB2005で[新しいプロジェクト]-[VisualBasic]-[Windowsアプリケーション]で 新規プロジェクトを作成しただけの状態から、ビルド、デバッグ実行すると 以下のエラーが表示され、デバッグ実行できません。 プロジェクトを実行しようとしているときにエラーが発生しました: (省略) 要求された操作には管理者特権が必要です。 Debugフォルダの中のexeファイルにはUACの盾アイコンがついています。 今まで特に気にせずアプリケーションの作成ができていたと思うのですが なぜか急にこのような現象に陥りました。 対処方法を教えてください。 環境:OS=Windows7 Pro    :VisualStudio2005

  • エラー処理

    環境:IIS,ASP(VBScript) サーバー Windows2000Server ASP超初心者です。 処理の途中でエラーになっても On Error Resume Next と If Err.Number then ........ を組み合わせればうまく逃げられるのはわかるの ですが、On Error Resume Nextを書いてもエラー が表示されて落ちます。 #include file の中についてはOn Error Resume Nextは無効なのでしょうか?

  • デバッグ時のエラー

    javaをまだはじめたばかりの初心者なので質問が適切ではないかも知れませんがご了承ください。 現在eclipseを使用してアプリケーション開発の勉強をしております。 eclipseの機能やコンポーネントの使い方などを重点に勉強しているのですが、デバッグにおいて下記のエラーが発生します。 クラスファイルエディッター ソースファイルが見つかりません。 ソース添付にファイルTrueTypeFont.classのソースが含まれていません。 以上のようなエラーが30個ほど表示されます。 しかし、デバッグをしないで普通にアプリケーションとして実行させるとエラーがでません。 ちなみにswingにて開発しております。

    • ベストアンサー
    • Java
  • On Error GoTo でエラーが発生する

    Sub Macro1() On Error GoTo ErrorTrap1     '-エラーの発生するコード 1 ErrorTrap1: On Error GoTo 0    Do    On Error GoTo ErrorTrap2       '-エラーの発生するコード 2    On Error GoTo 0    Loop ErrorTrap2: End Sub しかし、以下のようにSubで二つに分けるとエラーは出ません。 Sub Macro1() On Error GoTo ErrorTrap1     '-エラーの発生するコード 1 ErrorTrap1: On Error GoTo 0 Call Macro2 End Sub Sub Macro2()     Do      On Error GoTo ErrorTrap2       '-エラーの発生するコード 2     On Error GoTo 0     Loop   ErrorTrap2: End Sub 「On Error GoTo 0」がうまく解除できていないのかと思い、いろいろ試してみました。 しかし、どういった理由かはわかりませんでした。 「On Error GoTo」は、Subでは、ひとつしか使えないのでしょうか。

  • デバッグについて

    ウイルスバスターのウイルス検索などを実行すると Explore.EXE 問題が発生したためExploreを終了します。ご不便をおかけして申し訳ありません。作業途中であった場合、その情報は失われた場合があります。  デバッグ  閉じる という表示がよく出ます。デバッグを押したり閉じるをおしたりしてますが、どうすればいいか困っています。お教えください。 お願いいたします。

専門家に質問してみよう