Lặp lại toàn bộ cột trong Excel VBA
Dưới đây chúng ta sẽ xem xét một chương trình trong Excel VBA lặp qua toàn bộ cột đầu tiên và tô màu cho tất cả các giá trị thấp hơn một giá trị nhất định.
Đặ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, khai báo một biến có tên là i kiểu Long. Chúng ta sử dụng một biến kiểu Long ở đây vì biến Long có dung lượng lớn hơn biến Integer.
Dim i As Long
-
Tiếp theo, thêm dòng mã thay đổi màu phông chữ của tất cả các ô trong cột A thành màu đen.
Columns(1).Font.Color = vbBlack
-
Thêm vòng lặp.
For i = 1 To Rows.Count Next i
Lưu ý: trang tính có thể có tối đa 1.048.576 hàng trong Excel 2007 trở lên.
Bất kể bạn đang sử dụng phiên bản nào, dòng mã trên sẽ lặp qua tất cả các hàng.
-
Tiếp theo, chúng ta tô màu cho tất cả các giá trị thấp hơn giá trị được nhập vào ô D2. Các ô trống bị bỏ qua. Thêm các dòng mã sau vào vòng lặp.
If Cells(i, 1).Value < Range("D2").Value And Not IsEmpty(Cells(i, 1).Value) Then Cells(i, 1).Font.Color = vbRed End If
Kết quả khi bạn nhấp vào nút lệnh trên trang tính (quá trình này có thể mất một lúc):