このエントリーをはてなブックマークに追加このエントリをつぶやく

Excel : VBAで記述しているときに赤字が出てしまうとき

2014年 10月 08日 Excel

エクセルセミナーはこちら
エクセルのTipsはこちら
無料セミナーはこちら
開発のご依頼はこちら

 

 

文法に誤りがないか確認します

プロシージャを記述しているときに、「コンパイルエラー」のメッセージダイアログボックスが表示されて赤字になる場合は、書き方(文法)の誤りがある、ということです。

たとえば、次のようなとき。
  ・ If 文の 「then」が無い
  ・ “(ダブルクォーテーション)が対になっていない: ダブルクォーテーションは文字列を括るために使うので、 括る文字列の先頭と末尾とに付けます。それが一方だけの状態だとエラーになります。
  ・ 行継続文字の使い方が正しくない: 本来、1行で記述すべきところを、1行では長くなるので、 便宜上、複数行に分けて書く場合は、改行したい箇所の後に半角スペースを入れ、半角アンダースコアを続け、 Enterキーを押します。それが、アンダースコアの前に半角スペースがない、アンダースコアの後にスペースがある、 などの場合はエラーになります。

赤字があればエラーがあると気づくのですが、書き方の間違いがあっても記述しているときは コンパイルエラーのメッセージは出ず、赤字にもならないケースがあります。

それでも誤りは誤りなので、 実行しようとしたときにコンパイルエラーが表示されます。たとえば、次のようなとき。
  ・ If に対応する End If、For に対応する Next、With に対応する End With がない
  ・ 関数の引数に誤りがある(指定すべき引数の数が違うなど)

このような誤りがないかどうか、実行前に確認するには Visual Basic Editor の「デバッグ」から「VBAProjectのコンパイル」を選択します。

 

11_vba_01

 

これで、モジュール内に書かれているプロシージャのすべてがチェックされます。 何も表示されなければ、文法的な誤りは無いということです。 誤りがあると「コンパイルエラー」のメッセージが表示され、該当箇所が反転表示されます。

 

 

エクセルセミナーはこちら
エクセルのTipsはこちら
無料セミナーはこちら
開発のご依頼はこちら

このエントリーをはてなブックマークに追加このエントリをつぶやく

月別アーカイブTopics別アーカイブ