【Excel】エクセル VBA編 マクロエラーとエラー処理

 

 

エラー処理って使っていますか?

エラー処理といえば、0(ゼロ)で割る処理を行うとエラーが発生します。また、ファイルへの入出力の際に不適切なパスを指定した場合などもエラーが発生します。

エラーが発生すると処理が停止して、それ以降の処理が行われないなど不具合の原因となります。そうならないためには、エラー処理を行います。

この章では、Excelマクロエラーを処理する方法について説明します。まず、エラーをいくつか作成しましょう。

 

 

 

エラー処理とは

エラー処理とは、プログラムが何かしらの原因で処理が行えなかったり、意図しない処理を行う場合に、不具合を最小限に抑えるための処理です。

エラー処理には、大きく分けて2つの考え方があります。

  • データが壊れることやなくなることがないように、安全を第一に考え処理を中断し、その後の処理を行わない。
  • 間違いが起こっても他の処理に影響しないようにする。

マクロ開発者にとってエラーは嫌なものです。できればエラーメッセージは見たくありませんし、対処のしかたに慣れていないと、エラーの原因を解明するために思わぬ時間が必要だったりもします。

 

 

マクロエラー処理について

 

ワークシートにコマンドボタンを配置し、次のコード行を追加します。

x = 2の
範囲( “A1″)、Valu = x

1.シートのコマンドボタンをクリックします。

結果:

 

2. OKをクリックしてください。

変数xが定義されていません。コードの冒頭でOption Explicitステートメントを使用しているので、すべての変数を宣言する必要があります。Excel VBAは、エラーを示すためにx青に色分けしています。

 

 

3. Visual Basic Editorで、[リセット]をクリックしてデバッガを停止します。

 

4.コードの先頭に次のコード行を追加してエラーを修正します。

整数としての Dim x

あなたは以前にデバッグと呼ばれるテクニックを聞いたことがあるかもしれません。このテクニックを使えば、あなたのコードをステップスルーできます。

 

 

5. Visual Basic Editorで、Privateの前にカーソルを置き、F8キーを押します。

最初の行が黄色に変わります。

 

 

6. F8をさらに3回押します。

 

次のようなエラーが表示されます。

 

RangeオブジェクトにはValueというプロパティがあります。

 

ここでは値のスペルが正しくありません。デバッグはエラーを見つけるだけでなく、コードをよく理解するための優れた方法です。私たちのデバッグのサンプルプログラムはあなたのコードをシングルステップ実行し、ワークシートの各コード行の効果を見る方法をあなたに示します。

 

 

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です