For...Next Statement

Repeats a group of statements a specified number of times.

Syntax

For counter = start To end [Step step]
[statements]
[Exit For]
[statements]


Next [counter]

The ForÅNext statement syntax has these parts:

Part Description
counter Required. Numeric variable used as a loop counter. The variable can't be a Boolean or an array element.
start Required. Initial value of counter.
end Required. Final value of counter.
step Optional. Amount counter is changed each time through the loop. If not specified, step defaults to one.
statements Optional. One or more statements between For and Next that are executed the specified number of times.

Remarks

The step argument can be either positive or negative. The value of the step argument determines loop processing as follows:

Value Loop executes if
Positive or 0 counter <= end
Negative counter >= end

After all statements in the loop have executed, step is added to counter. At this point, either the statements in the loop execute again (based on the same test that caused the loop to execute initially), or the loop is exited and execution continues with the statement following the Next statement.

    Note: Changing the value of counter while inside a loop can make it more difficult to read and debug your code.

Any number of Exit For statements may be placed anywhere in the loop as an alternate way to exit. Exit For is often used after evaluating of some condition, for example If...Then, and transfers control to the statement immediately following Next.

You can nest For...Next loops by placing one For...Next loop within another. Give each loop a unique variable name as its counter. The following construction is correct:

For I = 1 To 10
    For J = 1 To 10
        For K = 1 To 10
        ...
        Next K
    Next J
Next I

    Note: If you omit counter in a Next statement, execution continues as if counter were included. In fact, the "Next counter" construction in ConceptDraw Basic is supported only for the purpose of compatibility with other popular releases of BASIC language. Counter is not necessary in the Next statement, and ConceptDraw Basic doesn't use it. ConceptDraw Basic keeps track of nested For...Next loops using just the keywords For and Next. Each Next matches the most recent For.

Example

This example uses the For...Next statement to create a string that contains 10 instances of the numbers 0 through 9, each string separated from the other by a single space. The outer loop uses a loop counter variable that is decremented each time through the loop.

Dim Words, Chars, MyString

For Words = 10 To 1 Step -1 ' Set 10 repetitions.
For Chars = 0 To 9 ' Set 10 repetitions.
MyString = MyString & Chars ' Append number to string.
Next ' Increment Chars counter
MyString = MyString & " " ' Append a space.
Next

Trace ">" & MyString & "<"

 

See Also

Do..Loop Statement, Exit Statement , While...Wend Statement