Note: The other languages of the website are Google-translated. Back to English

Làm thế nào để lặp qua các hàng cho đến khi trống trong cột Excel?

Đây là một cột dài với dữ liệu bao gồm một số ô trống và bạn muốn lặp qua các hàng cho đến khi gặp ô trống. Trong Excel, không có tính năng tích hợp nào có thể xử lý công việc này, nhưng tôi có thể giới thiệu một số macro để giúp bạn.

Lặp qua các hàng cho đến khi trống với VBA


mũi tên màu xanh bong bóng bên phải Lặp qua các hàng cho đến khi trống với VBA

1. nhấn Alt + F11 các phím để kích hoạt Microsoft Visual Basic cho các ứng dụng cửa sổ.

2. nhấp chuột Chèn > Mô-đunvà dán mã bên dưới vào tập lệnh trống.

VBA: Vòng lặp cho đến khi trống

Sub Test1()
'UpdatebyExtendoffice20161222
      Dim x As Integer
      Application.ScreenUpdating = False
      ' Set numrows = number of rows of data.
      NumRows = Range("A1", Range("A1").End(xlDown)).Rows.Count
      ' Select cell a1.
      Range("A1").Select
      ' Establish "For" loop to loop "numrows" number of times.
      For x = 1 To NumRows
         ' Insert your code here.
         ' Selects cell down 1 row from active cell.
         ActiveCell.Offset(1, 0).Select
      Next
      Application.ScreenUpdating = True
End Sub

doc vòng lặp cho đến khi trống 1

Trong mã, A1 là ô đầu tiên bạn muốn lặp lại, bạn có thể thay đổi nó khi cần.

3. nhấn F5 để bắt đầu lặp lại cột, sau đó con trỏ sẽ dừng lại ở ô trống gặp đầu tiên.
doc vòng lặp cho đến khi trống 2

Chú thích: Nếu bạn muốn lặp lại dữ liệu cho đến khi gặp các ô trống liên tục, bạn có thể sử dụng mã macro này.

Sub LoopThroughUntilBlanks()
'UpdatebyExtendoffice20161222
      ' Select cell A2, *first line of data*.
      Dim xrg As Range
      On Error Resume Next
      Set xrg = Application.InputBox _
        (Prompt:="first cell select..", Title:="Kutools for Excel", Type:=8)
      xrg.Cells(1, 1).Select
      ' Set Do loop to stop when two consecutive empty cells are reached.
      Application.ScreenUpdating = False
      Do Until IsEmpty(ActiveCell) And IsEmpty(ActiveCell.Offset(1, 0))
         ' Insert your code here.
         '
         ' Step down 2 rows from present location.
         ActiveCell.Offset(2, 0).Select
      Loop
      Application.ScreenUpdating = False
End Sub

Sau đó, bạn cần chọn ô đầu tiên bạn muốn lặp lại trong Kutools cho Excel thoại, bấm OK, sau đó con trỏ dừng trong các ô trống liên tục đầu tiên.

doc vòng lặp cho đến khi trống 3 doc vòng lặp cho đến khi trống 4

Dễ dàng kết hợp nhiều trang tính / Sổ làm việc thành một Trang tính hoặc Sổ làm việc

Để kết hợp nhiều trang tính hoặc sổ làm việc thành một trang tính hoặc sổ làm việc có thể khó khăn trong Excel, nhưng với Kết hợp trong Kutools cho Excel, bạn có thể kết hợp hợp nhất hàng chục trang tính / sổ làm việc thành một trang tính hoặc sổ làm việc, ngoài ra, bạn có thể hợp nhất các trang tính thành một chỉ bằng vài cú nhấp chuột.  Nhấp để xem đầy đủ tính năng 30 ngày dùng thử miễn phí!
kết hợp các tấm
 
Kutools cho Excel: với hơn 300 bổ trợ Excel tiện dụng, dùng thử miễn phí không giới hạn về số lượng 30 ngày

Các công cụ năng suất văn phòng tốt nhất

Kutools cho Excel giải quyết hầu hết các vấn đề của bạn và tăng 80% năng suất của bạn

  • Tái sử dụng: Chèn nhanh công thức phức tạp, biểu đồ và bất cứ thứ gì bạn đã sử dụng trước đây; Mã hóa ô với mật khẩu; Tạo danh sách gửi thư và gửi email ...
  • Thanh siêu công thức (dễ dàng chỉnh sửa nhiều dòng văn bản và công thức); Bố cục đọc (dễ dàng đọc và chỉnh sửa số lượng ô lớn); Dán vào Dải ô đã Lọchữu ích. Cảm ơn !
  • Hợp nhất các ô / hàng / cột mà không làm mất dữ liệu; Nội dung phân chia ô; Kết hợp các hàng / cột trùng lặp... Ngăn chặn các ô trùng lặp; So sánh các dãyhữu ích. Cảm ơn !
  • Chọn trùng lặp hoặc duy nhất Hàng; Chọn hàng trống (tất cả các ô đều trống); Tìm siêu và Tìm mờ trong Nhiều Sổ làm việc; Chọn ngẫu nhiên ...
  • Bản sao chính xác Nhiều ô mà không thay đổi tham chiếu công thức; Tự động tạo tài liệu tham khảo sang Nhiều Trang tính; Chèn Bullets, Hộp kiểm và hơn thế nữa ...
  • Trích xuất văn bản, Thêm Văn bản, Xóa theo Vị trí, Xóa không gian; Tạo và In Tổng số phân trang; Chuyển đổi giữa nội dung ô và nhận xéthữu ích. Cảm ơn !
  • Siêu lọc (lưu và áp dụng các lược đồ lọc cho các trang tính khác); Sắp xếp nâng cao theo tháng / tuần / ngày, tần suất và hơn thế nữa; Bộ lọc đặc biệt bằng cách in đậm, in nghiêng ...
  • Kết hợp Workbook và WorkSheets; Hợp nhất các bảng dựa trên các cột chính; Chia dữ liệu thành nhiều trang tính; Chuyển đổi hàng loạt xls, xlsx và PDFhữu ích. Cảm ơn !
  • Hơn 300 tính năng mạnh mẽ. Hỗ trợ Office / Excel 2007-2021 và 365. Hỗ trợ tất cả các ngôn ngữ. Dễ dàng triển khai trong doanh nghiệp hoặc tổ chức của bạn. Đầy đủ tính năng Dùng thử miễn phí 30 ngày. Bảo đảm hoàn lại tiền trong 60 ngày.
tab kte 201905

Tab Office mang lại giao diện Tab cho Office và giúp công việc của bạn trở nên dễ dàng hơn nhiều

  • Cho phép chỉnh sửa và đọc theo thẻ trong Word, Excel, PowerPoint, Publisher, Access, Visio và Project.
  • Mở và tạo nhiều tài liệu trong các tab mới của cùng một cửa sổ, thay vì trong các cửa sổ mới.
  • Tăng 50% năng suất của bạn và giảm hàng trăm cú nhấp chuột cho bạn mỗi ngày!
officetab dưới cùng
Nhận xét (7)
Chưa có xếp hạng. Hãy là người đầu tiên xếp hạng!
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Nó lặp lại một cột chứ không phải một hàng
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Để lặp qua một cột, bạn phải đi theo số hàng.
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Bạn có thể vui lòng giải thích điều kiện để dừng lặp là gì? Điều gì khiến bạn thoát ra khỏi vòng lặp trong Test1 ()?
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Nó sẽ dừng lại khi gặp ô trống đầu tiên trong cột
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Giả sử tôi có rất nhiều hàng ... bất kỳ thủ thuật nào để làm cho việc này chạy nhanh hơn?
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
Vòng lặp hoạt động đối với tôi ngoại trừ nó lặp qua mọi hàng đơn lẻ bất kể nó có trống hay không.
Nhận xét này đã được giảm thiểu bởi người điều hành trên trang web
VBA đầu tiên tạo ra kết quả sai trong trường hợp có một hoặc không hàng dữ liệu.

Bạn có thể cần một cái gì đó như

Nếu Phạm vi ("A1"). Giá trị = "" Thì
Số hàng = 0
ElseIf Range ("A1"). Offset (1, 0) .Value = "" Then
Số hàng = 1
Khác
NumRows = Range ("A1", Range ("A1"). End (xlDown)). Rows.Count
Cuối Nếu
Không có bình luận nào được đăng ở đây
Để lại ý kiến ​​của bạn
Đăng với tư cách khách
×
Đánh giá bài viết này:
0   Nhân vật
Các vị trí được đề xuất

Kết nối với chúng tôi

Bản quyền © 2009 - www.extendoffice.com. | Đã đăng ký Bản quyền. cung cấp bởi ExtendOffice. | BẢN ĐỒ CHI NHÁNH
Microsoft và logo Office là các nhãn hiệu hoặc nhãn hiệu đã đăng ký của Microsoft Corporation tại Hoa Kỳ và / hoặc các quốc gia khác.
Được bảo vệ bởi Sectigo SSL