Nếu bạn là người thường xuyên làm việc với Excel, Developer là một tính năng mà bạn nên biết. Nó giúp bạn tối ưu hóa công việc và giải quyết vấn đề một cách hiệu quả. Hãy cùng Mytour khám phá cách sử dụng vòng lặp For trong VBA.
Hướng dẫn chi tiết về cách sử dụng vòng lặp For trong VBA:
Bước 1 : Mở tính năng Developer trong Excel bằng cách vào File > Option:
Sau đó, chọn tab Customize Ribbon, tích vào mục Developer, và click OK:
Bước 2 : Trong hướng dẫn này, chúng ta sẽ thực hiện hai công việc. Đầu tiên là Đánh Số Thứ Tự Từ 1 đến 10000 trong cột A, bắt đầu từ ô A5. Thứ hai là In 10000 chữ 'Hello World' trong 1 cột Excel (cột B, bắt đầu từ ô B5). Để làm điều này, hãy chọn tab DEVELOPER trên thanh công cụ và click vào Visual Basic:
Lúc này, công cụ lập trình VBA sẽ mở ra. Click đúp vào sheet bạn đang sử dụng để mở trang cho phép thực hiện các câu lệnh của vòng For:
Bước 3 : Nhập đoạn mã For như sau:
Sub SoThuTu ()
Dim i As Integer
For i = 1 To 1000
Cells( i+4, 1) = 1
Next i
End Sub
Trong quá trình lập trình, có những điểm quan trọng cần lưu ý như sau:
- Hàm SoThuTu() được khai báo để thực hiện các công việc liên quan đến việc đánh số thứ tự.
- Biến i được khai báo với kiểu dữ liệu là số nguyên.
- Vòng lặp For i = 1 To 10000 định nghĩa rằng công việc sẽ được thực hiện với giá trị của i từ 1 đến 10000.
- Lệnh Cells (i+4, 1) = 1 trong vòng For gán giá trị của i vào ô excel thứ i+4 của cột thứ 1 (tức cột A).
Chú ý: Trong ví dụ này, tôi in số từ ô A5, nên tôi sử dụng mã lệnh i + 4. Nếu bạn muốn in từ ô A1, chỉ cần sử dụng Cells (i, 1) = 1.
- Lệnh Next i là để chuyển sang giá trị i tiếp theo trong vòng lặp.
- Lệnh End Sub kết thúc hàm SoThuTu sau khi vòng lặp thực hiện xong với giá trị i = 10000.
Bước 4: Sau khi nhập đoạn mã code chính xác, bạn nhấp vào biểu tượng nút Lưu như trong hình. Sau đó, chọn Đồng ý khi hộp thoại hiển thị:
Bước 5: Để chạy hàm vừa nhập, bạn click vào biểu tượng hình tam giác màu xanh lá cây như trong hình:
Trong cửa sổ mới xuất hiện, bạn chọn Chạy:
Kết quả, từ ô A5 trở đi sẽ được đánh số tăng dần từ 1 đến 10000:
Để kiểm tra xem giá trị 10000 đã được in đầy đủ hay chưa, bạn chỉ cần gõ vào ô và di chuyển đến A10004. Dưới đây là kết quả chứng minh rằng hàm đã in đúng 10000 giá trị từ 1 đến 10000:
Bước 6: Để in 10000 chữ 'Hello World' trong cột B từ ô B5, bạn thêm đoạn mã lệnh sau vào hàm SoThuTu:
Trong đoạn mã, Cells(i+4, 2) = “Hello World” có nghĩa là với mỗi giá trị i đang chạy, ô excel thứ i+4 của cột thứ 2 (cột B) sẽ được gán với đoạn văn bản là Hello World.
Sau khi nhập xong, nhấp vào nút Lưu như trước và chọn Đồng ý khi hộp thoại hiện ra:
Bước tiếp theo, nhấp vào biểu tượng hình tam giác màu xanh lá cây như đã hướng dẫn để chạy chương trình:
Sau đó, trong cửa sổ mới xuất hiện, chọn Run:
Và lúc này, từ ô B5 trở đi, tất cả đã được gán với đoạn văn bản là Hello World:
Để kiểm tra xem chữ Hello World đã được in đầy đủ hay không, hãy gõ vào ô và di chuyển đến B10004. Dưới đây là kết quả chứng tỏ rằng hàm đã in đúng:
Chắc chắn bạn đã nắm bí quyết sử dụng vòng lặp For trong VBA. Với công cụ này, bạn có thể giải quyết mọi thách thức trong công việc một cách hiệu quả. Nó không chỉ tiết kiệm thời gian mà còn giúp bạn hoàn thành nhiều công việc một cách dễ dàng hơn.