Home |
Search |
Today's Posts |
|
#1
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
On Thu, 03 Dec 2009 23:35:29 -0000, Dave Peterson
wrote: IanKR wrote: I have the block of code below in a Sub that tidies up a copied worksheet by removing unused rows. It€„¢s contained in a With €¦ End With block that refers to the copied sheet. I€„¢d like to know how the Exit For statement is handled if it€„¢s in a For ... Next block that is nested within another For €¦ Next block. I.e. will it cause the code to exit only the inner For €¦ Next block and proceed with the If VacRowClear = True Then statement, or will it exit the outer For €¦ Next block? I use nested For €¦ Next blocks quite a lot in my code; are they considered bad programming practice? 'delete Vacancy block rows if clear If VacancyStartRow < VacancyEndRow Then For r = VacancyEndRow To VacancyStartRow Step -1 'assume clear VacRowClear = True 'test whether first 9 cells are all clear For c = 1 To 9 If .Cells(r, c).Value < "" Then 'if any cell not clear... VacRowClear = False ' ... reset Boolean Exit For €˜<---- will this statement exit only the inner €˜ For ... Next block, or the outer one as well? End If Next c 'if all 9 first cells are clear, delete row If VacRowClear = True Then .Rows(r).Delete End If Next r End If Ps. I was kind of terse in my initial response. Exiting a For/next loop only exits that loop--it won't leave the higher level loop. I don't think that there's anything wrong with nesting these. Sometimes, the code can get complex, so instead of having lots of code within a for/next loop, I'll call a sub or function and put that code in there. It makes it a little easier when debugging the code--well, for me at least. Many thanks, Dave. Ian |
Reply |
Thread Tools | Search this Thread |
Display Modes | |
|
|
![]() |
||||
Thread | Forum | |||
If statement and exit macro | Excel Programming | |||
IF STATEMENT - NESTED | Excel Worksheet Functions | |||
Nested IF/AND Statement | Excel Discussion (Misc queries) | |||
Help with a nested IF statement. | Excel Discussion (Misc queries) | |||
statement to Exit Do if empty row | Excel Programming |