Lệnh Do Until...Loop thực hiện đoạn lệnh lặp đi lặp lại cho đến khi điều kiện trở thành đúng. Điều kiện có thể là bất kỳ biểu thức lô gíc nào mà biểu thức này có giá trị hoặc là đúng hoặc sai. Đây là cú pháp của lệnh Do Until...Loop trong Visual Basic.NET:
Do Until (DieuKien) MaLenh 1 MaLenh 2 . .. MaLenh n Loop
Các từ "Do", "Until" và "Loop" là từ khoá. Chúng có màu xanh da trời. Điều kiện được kiểm tra ở ngay đầu vòng lặp. Nếu điều kiện vẫn còn sai thì lệnh vẵn tiếp tục được thực hiện. Khi điều kiện trong lệnh Do Until trở thành đúng thì vòng lặp kết thúc.
Làm một ví dụ Do Until...Loop trong Visual Basic.NET. Tạo một ứng dụng Window tên là DoUntilLoop. Thêm một nút lệnh vào Form1. Nhấp đúp vào nút Button1 để soạn thảo mã lệnh cho sự kiện nhấn nút nhấn nút như sau:
Dim UntilValue As Integer
UntilValue = 0
Do Until (UntilValue > 1)
MessageBox.Show(UntilValue) UntilValue = UntilValue + 1
Loop
Dịch và chạy chương trình. Nhấn nút lệnh Button1. Hộp thông báo hiển thị 0. Nhấn OK. Hộp thông báo hiển thị 1. Nhấn nút OK. Vòng lặp kết thúc, Form được hiển thị trở lại.
Mã lệnh Do Until...Loop làm việc như thế nào? Đầu tiên, chúng ta khai báo biến UntilValue và khởi tạo giá trị ban đầu cho nó bằng 0. Biến UntilValue được sử dụng trong lệnh so sánh (biểu thức điều kiện) dùng để quyết định xem có tiếp tục thực hiện vòng lặp nữa không hay dừng lại. Mỗi lần vòng lặp thực hiện thì giá trị của UntilValue được tăng lên 1. Lệnh Do Until chứa lệnh so sánh, lệnh này được dùng để kiểm tra xem giá trị của UntilValue có lớn hơn 1 không. Ở lần lặp đầu tiên giá trị của UntilValue là 0. Biểu thức điều kiện có giá trị sai vì thế vòng lặp tiếp tục được thực hiện. Hộp thông báo xuất hiện và giá trị của UntilValue được tăng lên. Ở lần lặp thứ hai, giá trị của UntilValue là 1. Biểu thức lô gíc điều kiện vẫn sai, mã lệnh trong vòng lặp vẫn tiếp tục được thực hiện. Ở lần lặp thứ ba, giá trị của UntilValue là 2. Biểu thức lô gíc điều kiện 2>1 trở thành đúng, vòng lặp được kết thúc.