- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:IF文の使用制限について(VBA))
VBAのIF文の使用制限について
このQ&Aのポイント
- VBAのIF文の使用制限について質問です。25個目のIF文以降は正しく処理されません。IF文の使用個数の制限はあるのでしょうか?
- VBAで25個以上のIF文を使用していますが、後半の3つのIF文だけ正しく処理されません。コードは間違っていないと思いますが、IF文の使用制限があるのでしょうか?
- VBAで複数のIF文を使用していますが、25個目以降のIF文が正しく処理されません。IF文の使用制限について教えてください。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
If文に回数制限はありません。 ましてや25個程度の入れ子や繰り返しで疑われるのは、機能的な制限よりも人為的ミスです。 何回も見なおして、間違ってないと思われるのに発生するからバグは怖いですね。 ありがちなミスとしては ・End Ifの記載漏れ・位置ずれ ・変数操作の誤り ・If~Elseの関係性を読み違えている VBAならば、ステップ実行やイミディエイトウインドウでの観察を以って、 該当するIf文に差し掛かった時点での各変数の値を覗いてみることで、 問題解決への一歩と成るかもしれません。
その他の回答 (1)
- 5S6
- ベストアンサー率29% (675/2291)
回答No.2
おそらく他のIfの仲に入ってしまい、後半3つに行かないだけです。 プログラムを見直してください。 ブレークポイントでもおいて調べてみましょう。 きっと意図しないifに入っているのだと思います。 または if x > y then if x<=z then end if if x<=a then if n > m then end if if n >p then end if end if end if みたいに条件を1つに絞っていくとわかりやすいかもしれません。
質問者
補足
やはり制限は無いようですね・・・。 自分のミスということで、少し安心しました^^; ここから全てを変えるほうがキツイので…w ブレークポイントやコードの記述方法を変更して 再度プログラムを見直したいと思います>< ご回答頂きありがとうございました。
補足
早急にご回答いただきありがとうございます! なるほど…やはりありませんか>< End Ifの記載漏れは何回も見たので大丈夫そうですが、 変数操作の誤りが一番可能性としては高そうです…。 途中で値が変わっていないかなどを再度確認したいと思います。 参考URLも大変助かります。 ステップ実行も試してみたいと思います。 回答頂きありがとうございました。