PR

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

VBA
この記事は約2分で読めます。
記事内に広告が含まれています。

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

Amazon

30日間無料登録できる「Amazonプライム会員」に登録すれば、翌日に購入した商品が届くお急ぎ便・お届け日時指定便の指定ができるので、荷物をなるべく早く受け取りたい人にオススメ!


無料体験期間中もAmazonプライムビデオや1億曲以上聞き放題のAmazon Musicなど、すべてのプライム会員特典がセットになっています!

 

 

うめ
うめ

30日間以内に解約すれば費用は発生しません!

エラーになる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のトラブル解消記事を書いています。
単調な繰り返し作業が苦手なので、作業効率化の仕組みを記事にしています。
月間9万PVを突破しました!
商品レビューのご依頼は「お仕事の依頼について」をご確認ください。

うめをフォローする
VBA
梅屋ラボ
タイトルとURLをコピーしました