Добрый день
Начал разбираться (теоретически) с циклами VBA. Возник вопрос зачем их столько видов (7 вариантов, по имеющейся у меня информации)?
Как я понял, например, циклы Do While.. Loop и Do Until … Loop - один из них "явно" "лишний", с помощью оператора Not (Не) один "превращается" в другой (функционально)... Один из них можно было бы и не "добавлять" в язык VBA...
То же самое с Do … Loop While и Do … Loop Until
Также, предполагаю, While … Wend и Do While … Loop (While … Wend можно было бы и не "добавлять" в язык VBA, т.к. есть аналогичный Do While … Loop, у которого есть принудительный выход из цикла Exit, следовательно его возможности шире?)
Создал такой список "нужных" циклов для себя:
1. For … Next
2. For Each … Next
3. Do While … Loop
4. Do … Loop While
И "избыточных", но все равно нужных для меня, т.к. в чужих кодах они встречаются и нужно понимать их:
1. Do Until … Loop
2. Do … Loop Until
3. While … Wend
Но так как я - "чайник", а VBA - детище профессиональных программистов, то, конечно, сильно сомневаюсь в своих выводах о "нужных" и "ненужных" циклах, ведь практики у меня ноль, следовательно всех нюансов не знаю, может это и обоснованное количество циклов в VBA (в других языках их, может даже, и больше, чего я тоже не знаю
)...
В общем, хотелось бы узнать мнение людей с большим опытом в написании макросов, что Вы думаете по этому поводу?
В каких ситуациях вы используете тот или иной цикл почему? Или может быть есть такие циклы, которые Вы вообще не используете?
Начал разбираться (теоретически) с циклами VBA. Возник вопрос зачем их столько видов (7 вариантов, по имеющейся у меня информации)?
Как я понял, например, циклы Do While.. Loop и Do Until … Loop - один из них "явно" "лишний", с помощью оператора Not (Не) один "превращается" в другой (функционально)... Один из них можно было бы и не "добавлять" в язык VBA...
То же самое с Do … Loop While и Do … Loop Until
Также, предполагаю, While … Wend и Do While … Loop (While … Wend можно было бы и не "добавлять" в язык VBA, т.к. есть аналогичный Do While … Loop, у которого есть принудительный выход из цикла Exit, следовательно его возможности шире?)
Создал такой список "нужных" циклов для себя:
1. For … Next
2. For Each … Next
3. Do While … Loop
4. Do … Loop While
И "избыточных", но все равно нужных для меня, т.к. в чужих кодах они встречаются и нужно понимать их:
1. Do Until … Loop
2. Do … Loop Until
3. While … Wend
Но так как я - "чайник", а VBA - детище профессиональных программистов, то, конечно, сильно сомневаюсь в своих выводах о "нужных" и "ненужных" циклах, ведь практики у меня ноль, следовательно всех нюансов не знаю, может это и обоснованное количество циклов в VBA (в других языках их, может даже, и больше, чего я тоже не знаю

В общем, хотелось бы узнать мнение людей с большим опытом в написании макросов, что Вы думаете по этому поводу?
В каких ситуациях вы используете тот или иной цикл почему? Или может быть есть такие циклы, которые Вы вообще не используете?