ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Programming (https://www.excelbanter.com/excel-programming/)
-   -   Incrementing Do/Loop, For/Next and For/Each (https://www.excelbanter.com/excel-programming/352211-incrementing-do-loop-next-each.html)

Steve Drenker

Incrementing Do/Loop, For/Next and For/Each
 
I've got several loops where I discover midway through the loop that I don't
want to process the remaining commands before the "Loop" or "Next" at the
end of the loop. I DO NOT want to exit the loop -- just increment the
counter and process the next loop for next incremented variable.

I know that variables such as "i" in For i = 1 to 100 can be incremented
mid-loop, but this is not advisable.

Is there a way to skip to the bottom of a loop without using a GoTo
statement? Or is that the only way?

The Exit For command is no good because I want to continue processing the
remaining elements, not end the loop.

TIA
Steve

Sdrenker <is at pacbell <with a dot net


Charlie

Incrementing Do/Loop, For/Next and For/Each
 
Try a Do While loop

n = 1
Do While n < 100
n = n + 1
If something Then
n = NewValue
etc.
End If
Loop

"Steve Drenker" wrote:

I've got several loops where I discover midway through the loop that I don't
want to process the remaining commands before the "Loop" or "Next" at the
end of the loop. I DO NOT want to exit the loop -- just increment the
counter and process the next loop for next incremented variable.

I know that variables such as "i" in For i = 1 to 100 can be incremented
mid-loop, but this is not advisable.

Is there a way to skip to the bottom of a loop without using a GoTo
statement? Or is that the only way?

The Exit For command is no good because I want to continue processing the
remaining elements, not end the loop.

TIA
Steve

Sdrenker <is at pacbell <with a dot net



Norman Jones

Incrementing Do/Loop, For/Next and For/Each
 
Hi Steve,

Possibly, one way:

Dim blOk as Boolean

For i = 1 to 100

blOk = True
If ConditionTrue Then
'Do something
Else
BlOk =false
End If

'Processing code

If blOK then
'More processing
End if

Next i


---
Regards,
Norman



"Steve Drenker" wrote in message
...
I've got several loops where I discover midway through the loop that I
don't
want to process the remaining commands before the "Loop" or "Next" at the
end of the loop. I DO NOT want to exit the loop -- just increment the
counter and process the next loop for next incremented variable.

I know that variables such as "i" in For i = 1 to 100 can be incremented
mid-loop, but this is not advisable.

Is there a way to skip to the bottom of a loop without using a GoTo
statement? Or is that the only way?

The Exit For command is no good because I want to continue processing the
remaining elements, not end the loop.

TIA
Steve

Sdrenker <is at pacbell <with a dot net




Gary''s Student

Incrementing Do/Loop, For/Next and For/Each
 
The usual aproach is to use an IF:

For i = 1 to 10
if (things are good) then
yada yada yada
Yada Yada yada
else
endif
next

This will actually skip to the end of the For, but allow it to keep iterating.
--
Gary's Student


"Steve Drenker" wrote:

I've got several loops where I discover midway through the loop that I don't
want to process the remaining commands before the "Loop" or "Next" at the
end of the loop. I DO NOT want to exit the loop -- just increment the
counter and process the next loop for next incremented variable.

I know that variables such as "i" in For i = 1 to 100 can be incremented
mid-loop, but this is not advisable.

Is there a way to skip to the bottom of a loop without using a GoTo
statement? Or is that the only way?

The Exit For command is no good because I want to continue processing the
remaining elements, not end the loop.

TIA
Steve

Sdrenker <is at pacbell <with a dot net



Tim Williams

Incrementing Do/Loop, For/Next and For/Each
 
just use an if...then block to wrap the code you might want to skip, and
test for the "skip" condition in that block.

--
Tim Williams
Palo Alto, CA


"Steve Drenker" wrote in message
...
I've got several loops where I discover midway through the loop that I

don't
want to process the remaining commands before the "Loop" or "Next" at the
end of the loop. I DO NOT want to exit the loop -- just increment the
counter and process the next loop for next incremented variable.

I know that variables such as "i" in For i = 1 to 100 can be incremented
mid-loop, but this is not advisable.

Is there a way to skip to the bottom of a loop without using a GoTo
statement? Or is that the only way?

The Exit For command is no good because I want to continue processing the
remaining elements, not end the loop.

TIA
Steve

Sdrenker <is at pacbell <with a dot net





All times are GMT +1. The time now is 12:54 PM.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
ExcelBanter.com