Lặp lại phạm vi đã xác định trong Excel VBA
Dưới đây chúng ta sẽ xem xét một chương trình lặp qua một phạm vi xác định.
Ví dụ, khi chúng ta muốn bình phương các số trong Range (“A1: A3”). Bạn có biết rằng bạn cũng có thể lặp lại qua một liên kết: / vba -amples-dynamic-range [dynamic range]
không? Tình huống:
Đặt một nút lệnh trên trang tính của bạn và thêm các dòng mã sau:
-
Đầu tiên, chúng ta khai báo hai đối tượng Range. Chúng tôi gọi các đối tượng Range là rng và ô.
Dim rng As Range, cell As Range
-
Chúng ta khởi tạo đối tượng Range rng với Range (“A1: A3”).
Set rng = Range("A1:A3")
-
Thêm vòng lặp For Each Next.
For Each cell In rng Next cell
Lưu ý: rng và ô được chọn ngẫu nhiên ở đây, bạn có thể sử dụng bất kỳ tên nào.
Hãy nhớ tham khảo những tên này trong phần còn lại của mã của bạn.
-
Tiếp theo, chúng tôi bình phương mỗi ô trong phạm vi này. Để đạt được điều này, hãy thêm dòng mã sau vào vòng lặp:
cell.Value = cell.Value * cell.Value
Kết quả khi bạn bấm vào nút lệnh trên sheet:
-
Nếu bạn muốn kiểm tra từng ô trong phạm vi được chọn ngẫu nhiên, chỉ cần thay thế:
Set rng = Range("A1:A3")
với:
Set rng = Selection
-
Bây giờ, chọn Range (“A1: A2”).
Kết quả khi bạn bấm vào nút lệnh trên sheet: