VBA Do Until Loop | Ví dụ từng bước để sử dụng Do Until trong VBA

Do Until Loop trong VBA Excel là gì?

Trong VBA Do Until Loop , chúng ta cần xác định tiêu chí sau câu lệnh Until có nghĩa là khi nào chúng ta muốn vòng lặp dừng lại và câu lệnh kết thúc là chính vòng lặp. Vì vậy, nếu điều kiện là FALSE, nó sẽ tiếp tục thực hiện câu lệnh bên trong vòng lặp nhưng nếu điều kiện là TRUE ngay lập tức nó sẽ thoát khỏi câu lệnh Do Until.

Như các từ tự nó nói rằng để thực hiện một số tác vụ cho đến khi đạt được một tiêu chí, Do cho đến khi vòng lặp được sử dụng trong hầu hết các ngôn ngữ lập trình, trong VBA cũng đôi khi chúng ta sử dụng vòng lặp Do cho đến. Do Until Loop có nghĩa là làm điều gì đó cho đến khi điều kiện trở thành ĐÚNG. Nó giống như một hàm logic hoạt động dựa trên TRUE hoặc FALSE.

Điều này ngược lại với vòng lặp Do While trong đó Do while chạy các vòng lặp miễn là điều kiện là ĐÚNG.

Cú pháp

Vòng lặp Do Until có hai loại cú pháp.

Cú pháp # 1 

 Thực hiện cho đến khi [điều kiện] [Thực hiện một số tác vụ] Vòng lặp 

Cú pháp # 2

 Thực hiện [Thực hiện một số tác vụ] Vòng lặp cho đến khi [điều kiện] 

Cả hai đều trông rất giống nhau và có một điểm khác biệt đơn giản ở đó.

Trong cú pháp đầu tiên, vòng lặp “Do Until” kiểm tra điều kiện đầu tiên và nhận được kết quả điều kiện là TRUE hoặc FALSE. Nếu điều kiện là FALSE, nó sẽ thực thi mã và thực hiện một tác vụ được chỉ định và nếu điều kiện là TRUE thì nó sẽ thoát khỏi vòng lặp.

Trong cú pháp thứ hai, vòng lặp “Do” trước hết nó sẽ thực thi tác vụ cod sau đó nó kiểm tra xem điều kiện là TRUE hay FALSE. Nếu điều kiện là FALSE, nó sẽ quay lại và thực hiện tác vụ tương tự. Nếu điều kiện là TRUE thì nó sẽ ngay lập tức thoát khỏi vòng lặp.

Thí dụ

Tôi biết nó không phải là dễ dàng để hiểu bất cứ điều gì trong phần lý thuyết, nhưng không có gì phải lo lắng. Chúng tôi sẽ cung cấp cho bạn các ví dụ dễ hiểu về vòng lặp. Đọc tiếp. Để bắt đầu quá trình học, chúng ta hãy thực hiện thao tác chèn 10 số thứ tự đầu tiên từ ô A1 đến A10.

Bạn có thể tải mẫu VBA Do Until Excel này tại đây - Mẫu VBA Do Until Excel

Làm theo các bước dưới đây để áp dụng vòng lặp “Do Until”.

Bước 1: Tạo tên macro trước để bắt đầu quy trình con.

Mã:

 Sub Do_Until_Example1 () End Sub 

Bước 2: Xác định một biến là "Dài".  Tôi đã xác định “x” là một kiểu dữ liệu dài.

Dim x As Long

Bước 3: Bây giờ nhập từ “Do Until”.

Làm cho đến khi

Bước 4: Sau khi bắt đầu tên vòng lặp, nhập điều kiện là “x = 11”.

 Làm cho đến khi x = 11

x = 11 là phép thử logic mà chúng tôi đã áp dụng. Vì vậy, dòng này nói rằng hãy chạy vòng lặp cho đến khi x bằng 11.

Bước 5: Áp dụng thuộc tính CELLS và chèn các số sê-ri từ 1 đến 10.

Ô (x, 1) .Value = x

Lưu ý: Ở đây chúng ta đã đề cập đến “x” bắt đầu từ 1, vì vậy lúc đầu giá trị x bằng 1. Bất cứ nơi nào “x” có giá trị bằng 1.

Bước 6: Bây giờ đóng vòng lặp bằng cách nhập từ “LOOP”.

 Sub Do_Until_Example1 () Dim x As Long Do Until x = 11 Cells (x, 1) .Value = x Loop 

Kết thúc Sub

Ok, chúng ta đã hoàn thành phần viết mã, bây giờ chúng ta sẽ kiểm tra các mã từng dòng một để hiểu rõ hơn về vòng lặp.

Để chạy mã từng dòng, trước tiên hãy nhấn phím F8.

Đầu tiên, nó sẽ đánh dấu tên macro bằng màu vàng.

Khi bạn có thể nhìn thấy dòng màu vàng, nó cho biết rằng điều đó không được thực hiện bởi sắp thực thi nếu bạn nhấn phím F8 một lần nữa.

Bây giờ nhấn phím F8 một lần nữa, dòng màu vàng sẽ chuyển đến Do Until Loop.

Bây giờ để hiểu vòng lặp, hãy đặt con trỏ vào biến “x” và xem giá trị của biến “x”.

Vì vậy, x = 0. Vì dòng được đánh dấu là dòng đầu tiên trong vòng lặp nên giá trị của “x” là 0, vì vậy hãy nhấn phím F8 một lần nữa và xem giá trị của “x”. Trước khi thoát đó, mã sẽ chạy và gán giá trị cho “x” là 1.

Bây giờ một lần nữa bắt đầu chạy một vòng lặp bằng cách nhấn phím F8. Xem giá trị của “x”.

Bây giờ giá trị của “x” đang hiển thị là 1. Để có giá trị gia tăng cho biến “x”, chúng ta cần gán lại giá trị của biến “x” là x = x + 1 bên trong vòng lặp.

Bây giờ nhấn phím F8 một lần nữa và chúng ta sẽ nhận được giá trị là 1 trong ô A1.

Bây giờ nhấn phím F8 một lần nữa và xem giá trị của “x” là bao nhiêu.

Giá trị của biến “x” bây giờ là 2. Vì vậy, điều kiện của chúng tôi nói rằng hãy chạy vòng lặp cho đến khi điều kiện trở thành ĐÚNG, vì vậy vòng lặp của chúng tôi tiếp tục chạy cho đến khi giá trị của “x” trở thành 11.

Nhấn F8 một lần nữa, nó sẽ nhảy trở lại dòng vòng lặp “Do Until”.

Nhấn phím F8 thêm hai lần nữa, chúng ta sẽ nhận được giá trị là 2 trong ô A2.

Nhấn phím F8 một lần nữa và giá trị của “x” bây giờ trở thành 3.

Nhấn phím F8 một lần nữa, nó sẽ nhảy trở lại vòng lặp một lần nữa.

Như vậy, vòng lặp này sẽ tiếp tục thực hiện tác vụ cho đến khi giá trị của “x” trở thành 11. Bây giờ tôi đã thực hiện vòng lặp cho đến khi giá trị “x” trở thành 11.

Bây giờ nếu tôi nhấn F8, nó vẫn sẽ quay trở lại vòng lặp.

Nhưng nếu tôi nhấn phím F8 bây giờ nó sẽ thoát khỏi vòng lặp vì điều kiện áp dụng trở thành “TRUE” tức là x = 11.

Vì vậy, chúng tôi có số thứ tự từ 1 đến 10 trong bảng excel bây giờ.

Vì vậy, đây là ý tưởng cơ bản của vòng lặp "Do Until". Để hiểu bất kỳ vòng lặp nào, bạn cần chạy từng dòng mã cho đến khi bạn có được kiến ​​thức đầy đủ về các vòng lặp.


$config[zx-auto] not found$config[zx-overlay] not found