Loop Structures 

Visual Basic loop structures allow you to run one or more lines of code repetitively. You can repeat the statements in a loop structure until a condition is True, until a condition is False, a specified number of times, or once for each element in a collection.

The following illustration shows a loop structure that runs a set of statements until a condition becomes true.

Running a set of statements until a condition becomes true

Flow chart of a Do...Until loop

While Loops

The While...End While construction runs a set of statements as long as the condition specified in the While statement is True. For more information, see While...End While Statement (Visual Basic).

Do Loops

The Do...Loop construction allows you to test a condition at either the beginning or the end of a loop structure. You can also specify whether to repeat the loop while the condition remains True or until it becomes True. For more information, see Do...Loop Statement (Visual Basic).

For Loops

The For...Next construction performs the loop a set number of times. It uses a loop control variable, also called a counter, to keep track of the repetitions. You specify the starting and ending values for this counter, and you can optionally specify the amount by which it increases from one repetition to the next. For more information, see For...Next Statement (Visual Basic).

For Each Loops

The For Each...Next construction runs a set of statements once for each element in a collection. You specify the loop control variable, but you do not have to determine starting or ending values for it. For more information, see For Each...Next Statement (Visual Basic).

See Also

Tasks

How to: Transfer Control Out of a Control Structure
How to: Run Several Statements Repeatedly
How to: Run Several Statements for Each Element in a Collection or Array
How to: Improve the Performance of a Loop
How to: Skip to the Next Iteration of a Loop

Concepts

Decision Structures
Other Control Structures
Nested Control Structures

Other Resources

Control Flow in Visual Basic