Cách dùng vòng lặp do-while trong Excel VBA

Bạn muốn tự động hóa các nhiệm vụ lặp lại trong Excel VBA? Vậy thì hãy cùng học cách dùng vòng lặp Do-While để triển khai một loạt các hành động lặp lại cho tới khi một điều kiện được đáp ứng.

Sử dụng do while trong Excel VBA

Vòng lặp là một phần không thể thiếu của bất kỳ ngôn ngữ lập trình nào và bạn có thể tự động hóa nhiều tác vụ lặp đi lặp lại bằng cách sử dụng nhiều vòng lặp khác nhau, tùy thuộc vào ngôn ngữ hiện có. VBA của Excel không khác với các VBA khác, vì nó cung cấp một loạt các tùy chọn lặp, mỗi tùy chọn phục vụ một mục đích khác nhau.

Bạn có thể dùng những vòng lặp này bằng cách xác định các điểm bắt đầu và kết thúc, điều kiện và tham số. Một vòng lặp nổi bật trong VBA là do-while. Bạn có thể dùng nó để tự động hóa dữ liệu. Dưới đây là cách dùng vòng lặp do-while của VBA trong Excel, một phương pháp lặp vô cùng cần thiết, có thể đơn giản hóa tối đa các nhiệm vụ thủ công.

Vòng lặp Do-While trong Excel VBA là gì?

Vòng lặp do-while trong Excel khá đơn giản. Bạn có thể dùng vòng lặp này để đặt giá thầu nếu bạn muốn tạo đầu ra mong muốn dựa trên một điều kiện cụ thể. Vòng lặp được thực hiện khi các điều kiện được xác định là True. Khi chương trình gặp giá trị False, vòng lặp sẽ kết thúc và in kết quả trong các ô được chỉ định.

Bạn có thể dùng vòng lặp do-while ở các giai đoạn khác nhau với tiêu chí khác nhau. Thậm chí, bạn có thể dùng nhiều vòng lặp bên trong loop bên ngoài chính để nâng cao khả năng sử dụng của nó.

Công thức của vòng lặp do-while trong Excel VBA

Vòng lặp do-while có cấu trúc được xác định trước mà bạn cần phải tuân thủ, để đảm bảo chức năng của nó chạy mượt mà. Đây là công thức tham khảo:

Do while [condition_reference]

[Criteria statements]

Loop

Vòng lặp bắt đầu với từ khóa do-while, được theo sau bởi các tham chiếu bắt đầu và kết thúc. Phần đầu tiên của công thức kiểm soát toàn bộ vòng lặp. Tiếp theo, bạn cần xác định lệnh triển khai mỗi lần vòng lặp chạy.

Cuối cùng, sau khi điều kiện lặp cho giá trị False, từ khóa loop chạy và thoát vòng lặp đó. Đây là cấu trúc tổng thể. Bạn có thể tinh chỉnh nó để thực hiện các tác vụ khác nhau. Dưới đây là một số ví dụ để bạn làm quen với cách thức làm việc của loop do-while.

Viết code vòng lặp do-while đầu tiên

Giả sử bạn muốn hiển thị bội số của hai trong cột A. Điều kiện là in các số cho đến khi bộ đếm đạt 20.

Để làm việc này, điều hướng tới tab Developer trên Excel và mở trình chỉnh sửa code, hoặc nhấn Alt + F11 để mở trực tiếp nó. Trong cửa sổ biên tập code, click tab Insert và thêm mô đun mới.

Bạn cần viết tất cả code vào bên trong cửa sổ mô đun này. Thêm code sau vào bên trong mô đun:

Sub dowhileloop()

Dim a As Integer

a = 1

Do While a <= 10

Cells(a, 1) = 2 * a

a = a + 1

Loop

End Sub

Hàm Sub dowhileloop()

Phân tích code

  • Dùng trình con: Để bắt đầu viết code trong Excel VBA, tạo một shell bên ngoài bằng hàm sub-routine (Sub). Đặt cho nó một cái tên ý nghĩa, phù hợp với mục đích của code. Ở ví dụ này, bạn có thể dùng tên dowhileloop, sau đó là dấu ().
  • Xác định kiểu dữ liệu: Hàm dim phải được sử dụng để khai báo các kiểu dữ liệu. Bằng cách khai báo kiểu dữ liệu, bạn có thể viết code hiệu quả và cải thiện tốc độ thực thi. Trong trường hợp này, biến a chứa các giá trị số nguyên nên dùng kiểu dữ liệu số nguyên để xác định nó. Bạn có thể lưu số hàng bắt đầu trong biến này, để khai báo điểm dữ liệu ban đầu của loop do-while.
  • Xác định điều kiện: Giờ là lúc chuyển điều kiện để kiểm soát vòng lặp do-while. Bạn có thể dùng các từ khóa do while, theo sau là điều kiện. Ví dụ, nếu muốn lặp 10 lần, viết a < = 10.
  • Chuyển lệnh thực thi: Điều quan trọng là bạn phải biết sự khác biệt giữa hàm Ô và hàm Phạm vi trong VBA. Hàm ô sử dụng tham chiếu hàng và cột trong VBA. Ví dụ: trong lần lặp đầu tiên, khi giá trị của a = 1, công thức ô là (1,1). Trong bộ nhớ của VBA, điều này chuyển thành ô A1. Mỗi khi vòng lặp thực thi, giá trị của biến đã xác định sẽ tăng lên và tham chiếu sẽ di chuyển đến ô có sẵn tiếp theo.
  • Tăng biến: Bạn có thể chuyển lệnh a = a + 1 để tăng các giá trị ô. Điều này chuyển vòng lặp sang phần tiếp theo của điều kiện. Vòng lặp tiếp tục chạy cho tới khi điều kiện phát sinh giá trị sai.
  • Thoát điều kiện vòng lặp: Khi điều kiện False, thoát vòng lặp bằng từ khóa Loop, và cuối cùng, nó thoát sub-routine bằng End Sub.
  • Chạy code: Code đã sẵn sàng nên bạn chỉ cần nhấn F5 hoặc nút phát màu xanh lá ở thanh menu phía trên cùng để chạy code này.

Kết quả cuối cùng sẽ hiện một danh sách các số từ 2 tới 20 trong cột A.

Trên đây là cách dùng vòng lặp do-while trong Excel VBA. Hi vọng bài viết hữu ích với các bạn.

Thứ Năm, 30/03/2023 11:53
51 👨 2.669
0 Bình luận
Sắp xếp theo
    ❖ Microsoft Excel 2019