Öèêëû VBA (÷.3). Âëîæåííûå öèêëû
Öèêëû ìîæíî ïîìåùàòü âíóòðü äðóã äðóãà. Ïîìåùåíèå îäíîé ñòðóêòóðû öèêëà â äðóãóþ íàçûâàåòñÿ âëîæåíèåì öèêëîâ. Ìîæíî äåëàòü âëîæåíèå ñòðóêòóð öèêëîâ ðàçíîãî òèïà.
Ïðè âëîæåíèè öèêëîâ íàäî ñîáëþäàòü îïðåäåëåííûå ïðàâèëà:
- Ïðè âëîæåíèè öèêëîâ For..Next êàæäûé öèêë äîëæåí èìåòü ñâîþ óíèêàëüíóþ ïåðåìåííóþ ñ÷åò÷èêà;
- Ïðè âëîæåíèè öèêëîâ For Each..Next êàæäûé öèêë äîëæåí èìåòü ñâîþ óíèêàëüíóþ element-ïåðåìåííóþ;
- Åñëè èñïîëüçóåòñÿ îïåðàòîð Exit For èëè Exit Do âî âëîæåííîì öèêëå, ýòèì îïåðàòîðîì çàêàí÷èâàåòñÿ òîëüêî âûïîëíÿåìûé â äàííûé ìîìåíò öèêë. VBA ïðîäîëæàåò âûïîëíåíèå ñëåäóþùåãî öèêëà áîëåå âûñîêîãî óðîâíÿ.
 íèæåïðèâåäåííîì ëèñòèíãå ïîêàçàí ïðîñòåéøèé ïðèìåð èñïîëüçîâàíèÿ âëîæåííûõ öèêëîâ For..Next:

Ïðåðûâàíèå âûïîëíåíèÿ ìàêðîñà èëè ïðîöåäóðû
Çà÷àñòóþ ïðîãðàììèñòû äîïóñêàþò îøèáêè â íàïèñàíèè êîäà, êîòîðûå ïðèâîäÿò ê çàöèêëèâàíèþ ïðîãðàììû (áåñêîíå÷íûé öèêë). Äëÿ ïðåðûâàíèÿ âûïîëíåíèÿ VBA íåîáõîäèìî íàæàòü êëàâèøó Esc èëè êîìáèíàöèþ êëàâèø Ctrl+Break. VBA çàêàí÷èâàåò âûïîëíåíèå òåêóùåãî îïåðàòîðà, ïåðåõîäèò â ñîñòîÿíèå îæèäàíèÿ è îòîáðàæàåò îêíî ñîîáùåíèÿ î runtime-îøèáêå.