【VBA】Elseに対応するIfがありません。になる4つの原因

VBA
この記事は約2分で読めます。

今回はVBAで「Elseに対応するIfがありません。」とエラーメッセージが表示される4つの原因紹介します。

スポンサーリンク
[ad01]

エラーになる4つの原因

「End IF」の位置

IF文の中で「End If」を記述すると、そこでIF文が終了します。

IF~の記述がないのに、突然Elseが現れたと判断されるため、「Elseに対応するIfがありません。」のエラーになります。

1行で記述した場合

IF文を1行にまとめて記述した場合、1行で処理が完結します。

IF~の記述がないのに、突然Elseが現れたと判断されるため、「Elseに対応するIfがありません。」のエラーになります。

うめ
うめ

個人的にはIF文を行でまとめるメリットを感じないため、このような使い方はしないですねぇ…。

「Next」が抜けている

IF文内でFor文の「Next」が抜けていると「Elseに対応するIfがありません。」のエラーになります。
※12行目をコメントアウトにしています。

補足

IF文の外でNextが抜けている場合は「Forに対する Nextがありません。」のエラーになります。

「End With」が抜けている

IF文内でWithを記述した時に「End With」が抜けていると「Elseに対応するIfがありません。」のエラーになります。
※12行目をコメントアウトにしています。

補足

IF文の外でEnd Withが抜けている場合は「End Withが必要です。」のエラーになります。

まとめ

VBAで「Elseに対応するIfがありません。」とエラーメッセージが表示される4つの原因について解説をしました。

4つの原因
  1. 「End IF」の位置
  2. 1行で記述した場合
  3. 「Next」が抜けている
  4. 「End With」が抜けている

この記事が気に入ったら
いいね ! しよう

Twitter で
この記事を書いた人
うめ

便利なガジェットレビューやPCのトラブル解消記事を書いています。
単調な繰り返し作業が苦手なので、作業効率化の仕組みを記事にしています。
月間6.5万PV突破しました!
商品レビューのご依頼は「お仕事の依頼について」をご確認ください。

うめをフォローする
VBA
スポンサーリンク
[ad01]
梅屋ラボ
タイトルとURLをコピーしました