Khi sử dụng Excel, bạn có thể gặp dòng trống và khi muốn loại bỏ nó, bạn có thể dùng VBA. Bài viết này sẽ giúp bạn biết được những cách dùng phím tắt và VBA xóa dòng trống trong Excel đơn giản.
Phím tắt nhanh nhất để xóa các hàng trong bảng
Để xóa các hàng trong bảng, bạn có thể sử dụng phím tắt. Ưu điểm của phím tắt là nhanh chóng và có thể xóa cùng lúc nhiều hàng theo giá trị ô. Đầu tiên, bạn hãy đánh dấu các ô trên hàng và nhấn tổ hợp phím Shift +Space.
Nếu là các ô không liền kề, bạn có thể chọn chúng bằng cách giữ phím Ctrl. Ngoài ra, nếu muốn chọn toàn bộ hàng, bạn có thể sử dụng các nút số hàng. Khi đó, bạn sẽ thấy các hàng được đánh dấu bên cạnh nút số hàng. Sau khi chọn các hàng, bạn dùng phím tắt Delete Row của Excel để xóa chúng.
Xóa hàng khỏi toàn bộ bảng
Bạn hoàn toàn có thể dùng phím tắt xóa hàng để loại bỏ các hàng chỉ trong 2 bước nếu như bạn có một danh sách Excel đơn giản và không có thông tin bổ sung ở ô bên phải. Cụ thể:
Bước 1: Chọn hàng muốn xóa
Bước 2: Nhấn phím tắt Ctrl + – (trên bàn phím chính)
Sau khi thực hiện bước 2, bạn thấy các hàng sẽ không biến mất ngay lập tức. Khi đó bạn có thể đánh dấu màu vùng chứa các giá trị muốn loại bỏ. Dùng phím tắt Ctrl + – (bàn phím chính) => xuất hiện hộp thoại Delete => chọn Entire row để xóa toàn bộ hàng.
Xóa hàng nếu có dữ liệu ở bên phải bảng
Dùng phím tắt là cách nhanh nhất để xóa hàng trong Excel. Nếu ở bên phải bảng chính có dữ liệu, nó có thể xóa luôn dữ liệu mà có thể bạn muốn giữ lại. Khi đó, bạn cần định dạng dữ liệu dưới dạng bảng Excel. Các bước thực hiện như sau:
Bước 1: Chọn kiểu phù hợp nhất bằng cách nhấn Ctrl + T hoặc vào tab Home => Format as Table
Bước 2: Khi đó sẽ xuất hiện hộp thoại Create Table, bạn có thể dùng để đánh dấu khoảng cần thiết
Bước 3: Sau khi thực hiện bước 2, dữ liệu của bạn đã được định dạng. Lúc này, hãy chọn hàng hoặc vùng giá trị mà bạn muốn xóa trong bảng (Lưu ý: Không dùng các nút hàng để chọn toàn bộ hàng).
Bước 4: Xóa dữ liệu khỏi bảng bằng cách nhấn Ctrl + – (trên bàn phím chính). Khi đó, các thông tin bổ sung ở bên phải vẫn được giữ lại.
Xóa các hàng có chứa dữ liệu định trong một cột
Nếu các mục trong hàng mà bạn muốn xóa chỉ xuất hiện trong một cột, bạn có thể thực hiện lần lượt theo các bước sau đây:
Bước 1: Để lọc dữ liệu trong bảng, bạn đến tab Data => chọn biểu tượng Filter.
Bước 2: Dựa vào các tùy chọn để lọc cột có chứa các giá trị cần xóa: nhấp vào biểu tượng mũi tên cạnh cột chứa các mục cần lọc => bỏ chọn Select All và đánh dấu hộp kiểm bên cạnh các giá trị cần lọc (Bạn chỉ cần nhập văn bản cần lọc và nhấn OK để xác nhận nếu danh sách quá dài).
Bước 3: Chọn các ô được lọc trong các hàng mà bạn muốn xóa (không cần chọn toàn bộ hàng).
Bước 4: Nhấp chuột phải vào vùng được đánh dấu => từ danh sách trình đơn chọn Delete Row
Bước 5: Để hủy trạng thái lọc dữ liệu và các hàng với các giá trị không cần thiết biến mất khỏi bảng, bạn nhấp vào biểu tượng Filter thêm một lần nữa.
Excel VBA Macro để xóa hàng hoặc loại bỏ mọi hàng khác
Nếu bạn muốn có một giải pháp để tự động thực hiện việc xóa hàng, loại bỏ mọi hàng khác hoặc thực hiện các thủ tục Excel khác, hãy chọn các macro bên dưới để xóa hàng. Tham khảo 2 VBA Macro giúp xóa hàng trong Excel hoặc loại bỏ các hàng với ô đã chọn.
-
Macro RemoveRowsWithSelectedCells: Loại bỏ các dòng chứa ít nhất một ô được đánh dấu.
-
Macro RemoveEveryOtherRow: Xóa hàng thứ 2 hoặc 3 theo các thiết lập của bạn. Nó giúp loại bỏ các hàng bắt đầu với vị trí con trỏ chuột hiện tại cho đến cuối bảng.
Sub RemoveRowsWithSelectedCells()
Dim rngCurCell, rng2Delete As Range
Application.ScreenUpdating = False
Application.Calculation = xlCalculationManual
For Each rngCurCell In Selection
If Not rng2Delete Is Nothing Then
Set rng2Delete = Application.Union(rng2Delete, _
ActiveSheet.Cells(rngCurCell.Row, 1))
Else
Set rng2Delete = rngCurCell
End If
Next rngCurCell
If Not rng2Delete Is Nothing Then
rng2Delete.EntireRow.Delete
End If
Application.ScreenUpdating = True
Application.Calculation = xlCalculationAutomatic
End Sub
Sub RemoveEveryOtherRow()
Dim rowNo, rowStart, rowFinish, rowStep As Long
Dim rng2Delete As Range
rowStep = 2
rowStart = Application.Selection.Cells(1, 1).Row
rowFinish = ActiveSheet.UsedRange.SpecialCells(xlCellTypeLastCell).Row
Application.ScreenUpdating = False
Application.Calculation = xlCalculationManual
For rowNo = rowStart To rowFinish Step rowStep
If Not rng2Delete Is Nothing Then
Set rng2Delete = Application.Union(rng2Delete, _
ActiveSheet.Cells(rowNo, 1))
Else
Set rng2Delete = ActiveSheet.Cells(rowNo, 1)
End If
Next
If Not rng2Delete Is Nothing Then
rng2Delete.EntireRow.Delete
' Hide every other row
'rng2Delete.EntireRow.Hidden = True
End If
Application.ScreenUpdating = True
Application.Calculation = xlCalculationAutomatic
End Sub
Kết luận: VBA thực sự hữu ích trong công việc, nó giúp lập báo cáo tự động, điều khiển các chương trình như Word, Outlook, Power Point,… Thêm nữa, VBA còn giúp tăng tốc độ xử lý trên Excel và bài viết này đã giúp bạn biết cách dùng VBA xóa dòng trống trong Excel đơn giản, hiệu quả.