【VBAエラー】「修正候補: 式」の原因・解決方法

エラー内容

VBAコンパイル時に、「修正候補: 式」と表示される。

原因と解決方法

プログラムの記述が途中で切れていたり、記述もれがある時に表示されるメッセージです。

プログラムを書いてる途中で、Enter押したり、違う行に移動しても表示されます。ちょっとジャマなメッセージなんですよねぇ・・・

4つの原因と解決方法が考えられます。

原因1. Ifの条件部分を書いていない

解説

If文の条件部分が正しく書けてないのが原因です。
サンプルソースでは、=の右側に条件となる値がありません。

解決方法

条件部分を正しく修正します。
サンプルソースでは、=の右側に条件100を追加。

 

原因2. 引数を書いていない

解説

引数部分がカンマで終わっていて、その後に引数の指定がないのが原因です。

解決方法

引数部分は、変数や値で終わるようよう修正します。
引数を省略する場合は、直前のカンマも省略します。

 

原因3. インクリメント演算子や、デクリメント演算子を使ってる

解説

VBAでは変数の増減をするインクリメント演算子(++)やデクリメント演算子(–)が使えません。

JavaやCなど他の言語を使ったことがある人が、うっかりするミスです。

解決方法

VBAでは省略した書き方がないので、素直にそのままコーディングしましょう。(計算結果を左辺の変数に保存)

 

原因4. +=演算子や-=演算子を使ってる

解説

VBAではインクリメント演算子だけでなく、+=演算子や-=演算子も使えません。

VB.netでは使えるので、「おなじVB系なのにVBAダメなん・・・」と思っちゃいます

解決方法

素直にそのままコーディングしましょう。(計算結果を、左辺の変数に保存)

 

関連記事

VBAエラー原因・解決方法
成果を出す5つのポイント
VBAエラー原因・解決方法
えくとしょ | 初心者のためのエクセルとVBAの図書館
タイトルとURLをコピーしました