Cú pháp: For Each <phần tử> In <tập hợp> ' Các câu lệnh [Exit For] ' Các câu lệnh Next [phần tử]
Với cú pháp này, chương trình sẽ duyệt qua từng phần tử trong tập hợp đang duyệt. Chú ý kiểu của phần tử phải khai báo tương thích với kiểu của tập hợp đang duyệt. Exit For dùng để thoát khỏi vòng lặp For
Ví dụ: Đoạn chương trình dưới đây dùng cấu trúc For .. Each .. Next để duyệt qua lần lượt các phần tử trong một tập hợp nhằm tìm phần tử có chứa chuỗi "Hello". Đoạn mã này giả thiết là tập hợp thisCollection đã được thiết lập và mỗi phần tử của nó thuộc kiểu String.
Dim found As Boolean = False
Dim thisCollection As New Collection
For Each thisObject As String In thisCollection If thisObject = "Hello" Then
found = True Exit For End If Next thisObject c. Do … Loop Mẫu 1:
37 Do While <biểu thức logic>
' Các câu lệnh Loop
Với cú pháp này, các câu lệnh đặt trong vùng Do While … Loop chỉ thực hiện bao lâu <biểu thức logic> có giá trị True. Sau mỗi lần thực hiện các câu lệnh trong vùng Do While...Loop, <biểu thức logic> sẽ được kiểm tra lại:
Nếu trị True, thực hiện lại vòng lặp Nếu trị False, chấm dứt vòng lặp.
Cấu trúc này kiểm tra <biểu thức logic> trước khi thực hiện các lệnh nên sẽ không thực hiện lần nào nếu ngay lần đầu tiên <biểu thức logic> có trị False.
Mẫu 2:
Do
' Các câu lệnh
Loop While <biểu thức logic>
Tương tự Do While … Loop, các câu lệnh chỉ tiếp tục thực hiện khi <biểu thức logic> có giá trị True và sẽ kiểm tra lại <biểu thức logic> sau mỗi lần thực hiện.
Do kiểm tra sau khi thực hiện nên nếu ngay lần đầu <biểu thức logic> có trị False, các lệnh cũng được thực hiện một lần.
Mẫu 3:
Do Untile <biểu thức logic> ' Các câu lệnh
Loop
Mẫu 4:
Do
' Các câu lệnh
Loop Until <biểu thức logic>
Hai cú pháp này tương tự hai cú pháp trên (Do While … Loop, Do … Loop While), với một khác biệt là chỉ thực hiện hoặc tiếp tục thực hiện khi <biểu thức logic> là False.
Chúng ta có thể chấm dứt giữa chừng vòng lặp với lệnh Exit Do