VBAのコンパイルとコンパイルエラーと実行時エラーについて

覚え書きです
5
ちゅん🐤 @KotorinChunChun

「コンパイルエラー」は、「コンピュータがコードをコンパイル(翻訳)を試みた時」にエラーが出たことを意味している。 「翻訳に失敗する」状況は、宣言されていない単語の使用や文法間違いなど。 ※ただし、開発者の意図とは違う翻訳をすることもあり、全ての文法エラーを検知するとは限らない。

2022-09-17 21:05:28
ちゅん🐤 @KotorinChunChun

翻訳のタイミングは2種類あって、 一つはプログラムの開始時に宣言エリアの構文チェック もう一つは、プロシージャ単位で流入した時に行われる。 ※そのため、プログラムが進行してからCall等で別のプロシージャを呼び出したとき、実行中にコンパイルエラーが発生することもある。

2022-09-17 21:09:52
ちゅん🐤 @KotorinChunChun

実行中にコンパイルエラーが発生する問題は、メニュー「デバッグ」の「VBAProject のコンパイル」によって、ある程度解決できる。 この操作によって、いちいちプロシージャへ流入しなくても、全てのプロシージャを先行してコンパイルすることができる。

2022-09-17 21:12:12
ちゅん🐤 @KotorinChunChun

※ただし、メニューにある「コンパイル」も完全とは言えず、実際にプロシージャへ流入したり、あるステートメントを実行した時に初めてコンパイルエラーを発生させることもある。 (この辺は、外部のオブジェクトを扱う時に起きがちで、ExcelのVBAでは見かけないので、あまり意識しなくても良い)

2022-09-17 21:17:16