【Excel-VBA】For Next文の中にFor Next 文は何回書ける?ループ処理の書き方

2020年1月29日

For Next 文の中にFor文を記述する際に、ついつい何度もFor文で記述するなんてこともよくあることです。

しかし、実際に記述してみると、一昔前までは、For文の使いすぎによっては、その処理では動かなくなってしまうなんてことも。

そこで、For文の中にはFor文って何回使用できるのか?その実態について解説していきましょう。

 

実際のループ処理の記述の仕方

For Next文の記述の仕方は、下記のように記述を行っていきます。

 

このFor Next文の中に、For Next文を記述すると以前のOfficeと比較すると、非常に多くのFor文処理が動作することがわかってきています。

For Next文中にFor Next文は何回書けるの?

For Next 文の中にFor文を記述することは、プログラマーであれば、普通のことでもあります。そこで、このFor文の中にFor文は何回まで使うことができるのでしょうか?

昔は3回までしかできなかった

Officeの2003以前であれば、For文の中にFor文を記載することはできましたが、4回以上記述すると処理が流れなくなっていました。

こうした場合の対処法として、おすすめするのが、For Next文とDo Until文を併用して利用することで、従来はこの問題を回避できていました。

 

現在では10回書いてもエラーなし

Officeのグレードアップによる処理の向上によって、現在で確認した所、10回までは、普通に処理が通ることが確認できています。

Office2010以降であれば、10回以上は確実に処理を流すことができます。まあ基本的の一つの処理の中でFor Next文を10回も使用することはありませんが、ここまでは動作することが確認できています。

もし利用に迷ったら参考にして見て下さい。

ちなみに、For Next文を一つの処理の中で、何十回も使用するのは、ナンセンスです。5回程も使用することがある場合には、Call文にて、処理を分割してサブルーチン化した上手な記述テクニックが必要となるでしょう。

 

⇒ Call 文の記述の仕方はこちら

 

 

まとめ

ループ処理を行うときに、For Next文がどれだけ記述することができるのかについてもOfficeのバージョン、グレードによっても大きく異なります。Officeのバージョンによって、動作する記述やそうでない記述をしっかり理解した上で、For Next文を活用していきましょう。

For Next文は、ループ処理の中でも処理速度が速いものですので、ぜひプログラムの処理に応じて上手に活用していきましょう。