Hướng dẫn how do i delete visible filtered rows in excel? - làm cách nào để xóa các hàng đã lọc hiển thị trong excel?

Excel cung cấp một loạt các chức năng, rất nhiều trong số đó hầu hết người dùng thậm chí không biết. Một trong những tính năng hấp dẫn nhất của nó là tính linh hoạt của các bộ lọc.

Các bộ lọc Excel cung cấp một cách tuyệt vời để bạn chỉ xem dữ liệu mà bạn cần trong khi giữ các hàng không liên quan.

Bằng cách này, bạn có thể tập trung vào dữ liệu cụ thể, mà không có sự lộn xộn. Trong khi vận hành một trong những bộ lọc này, bạn có thể cảm thấy cần phải xóa một số hàng không liên quan này, có thể vì bạn không cần chúng nữa.

Ví dụ: trong bộ dữ liệu bên dưới, chúng tôi có dữ liệu về một nhân viên của công ty. Như bạn có thể thấy, một số nhân viên này đã nghỉ hưu, một số vẫn đang phục vụ, trong khi một số trong số họ đang bị quản chế.

Hướng dẫn how do i delete visible filtered rows in excel? - làm cách nào để xóa các hàng đã lọc hiển thị trong excel?

Bạn có thể không cần thông tin về nhân viên đã nghỉ hưu nữa. Vì vậy, bạn có thể muốn xóa các hàng có chứa thông tin về nhân viên đã nghỉ hưu.

Vấn đề là, bạn không muốn tìm kiếm thủ công từng hàng để tìm những thứ có trạng thái việc làm = đã nghỉ hưu. Điều đó đánh bại toàn bộ mục đích của việc sử dụng bảng tính máy tính, phải không?

Giải pháp tốt nhất là sử dụng các bộ lọc để giúp bạn trong quá trình này. Trong bài viết này, chúng tôi sẽ chỉ cho bạn cách xóa các hàng được lọc trong Excel.

Chúng tôi sẽ chỉ cho bạn cách xóa cả hai hàng có thể nhìn thấy sau khi bạn áp dụng bộ lọc, cũng như các hàng vô hình.

Nếu bạn muốn mã hóa và muốn tăng tốc các quy trình Excel của bạn bằng mã VBA, chúng tôi có một vài đoạn mã mà bạn cũng có thể sử dụng.

Nhấn vào đây để tải xuống tệp ví dụ và theo dõi

  • Xóa các hàng được lọc có thể nhìn thấy
  • Xóa các hàng được lọc có thể nhìn thấy bằng VBA
  • Xóa các hàng được lọc được ẩn
  • Xóa các hàng ẩn bằng tính năng tài liệu kiểm tra
  • Xóa các hàng ẩn bằng cách tạo một cột tạm thời
  • Xóa các hàng được lọc được ẩn bằng VBA

Xóa các hàng được lọc có thể nhìn thấy

Xóa các hàng được lọc có thể nhìn thấy bằng VBA

  1. Xóa các hàng được lọc được ẩn
  2. Xóa các hàng ẩn bằng tính năng tài liệu kiểm tra
  3. Xóa các hàng ẩn bằng cách tạo một cột tạm thời
  4. Xóa các hàng được lọc được ẩn bằng VBA
  5. Đối với vấn đề trên, bạn có thể lọc các hàng mà bạn không cần và sau đó xóa các hàng này. Đây là cách: làm thế nào:
  6. Chọn toàn bộ khu vực làm việc của bộ dữ liệu của bạn.
  7. Từ tab Dữ liệu, chọn nút Bộ lọc (dưới nhóm ‘Sắp xếp và Bộ lọc).

Bạn sẽ nhận thấy các mũi tên nhỏ trên mọi ô của hàng tiêu đề. Chúng có nghĩa là để giúp bạn lọc các ô của bạn. Bạn có thể nhấp vào bất kỳ mũi tên nào để chọn bộ lọc cho cột tương ứng.

Hướng dẫn how do i delete visible filtered rows in excel? - làm cách nào để xóa các hàng đã lọc hiển thị trong excel?

Xóa các hàng được lọc có thể nhìn thấy bằng VBA

Xóa các hàng được lọc được ẩn

Sub DeleteVisibleRows()
Dim Rng As Range
Set Rng = Selection
Rng.AutoFilter Field:=5, Criteria1:="Retired"
Rng.Offset(1, 0).SpecialCells(xlCellTypeVisible).EntireRow.Delete
ActiveSheet.AutoFilterMode = False
End Sub
  • Xóa các hàng ẩn bằng tính năng tài liệu kiểm tra
  • Xóa các hàng ẩn bằng cách tạo một cột tạm thời
  • Xóa các hàng được lọc được ẩn bằng VBA

Đối với vấn đề trên, bạn có thể lọc các hàng mà bạn không cần và sau đó xóa các hàng này. Đây là cách: làm thế nào:

  1. Chọn toàn bộ khu vực làm việc của bộ dữ liệu của bạn.
  2. Từ tab Dữ liệu, chọn nút Bộ lọc (dưới nhóm ‘Sắp xếp và Bộ lọc).
  3. Bạn sẽ nhận thấy các mũi tên nhỏ trên mọi ô của hàng tiêu đề. Chúng có nghĩa là để giúp bạn lọc các ô của bạn. Bạn có thể nhấp vào bất kỳ mũi tên nào để chọn bộ lọc cho cột tương ứng.
  4. Trong ví dụ này, chúng tôi chỉ muốn lọc ra các hàng có chứa trạng thái việc làm đã nghỉ hưu. Vì vậy, chọn mũi tên bên cạnh tiêu đề trạng thái việc làm và bỏ chọn các hộp bên cạnh tất cả các trạng thái, ngoại trừ đã nghỉ hưu. Bạn chỉ có thể bỏ chọn, chọn tất cả các nhóm để nhanh chóng bỏ chọn mọi thứ và sau đó chỉ cần chọn những người đã nghỉ hưu.

Bấm OK. Bây giờ bạn sẽ chỉ thấy các hàng có tình trạng việc làm đã nghỉ hưu.

Xóa các hàng được lọc được ẩn

Xóa các hàng ẩn bằng tính năng tài liệu kiểm tra

Giả sử, bạn chỉ muốn chi tiết của nhân viên bán hàng vẫn đang phục vụ hoặc quản chế. Khi bạn có các bộ lọc phức tạp hơn, người ta thường muốn xóa các hàng không đủ điều kiện, thay vì các bộ phận đủ điều kiện.

Nói cách khác, người ta muốn xóa các hàng được ẩn sau khi lọc.

Chúng ta hãy sử dụng cùng một bộ dữ liệu mà chúng ta đã sử dụng trước đây và lần này, áp dụng hai bộ lọc - một để xóa các hàng có trạng thái việc làm = đã nghỉ hưu và một hàng khác để loại bỏ bất kỳ hàng nào không chứa bộ phận = Sales Sales

Ở đây, quá trình lọc trước tiên:

  1. Chọn toàn bộ khu vực làm việc của cơ sở dữ liệu của bạn
  2. Từ tab Dữ liệu, chọn nút Bộ lọc (dưới nhóm ‘Sắp xếp và Bộ lọc).
  3. Chọn mũi tên bộ lọc bên cạnh tiêu đề trạng thái việc làm và bỏ chọn hộp bên cạnh đã nghỉ hưu.
  4. Tiếp theo, chọn mũi tên bộ lọc bên cạnh tiêu đề của bộ phận và bỏ chọn tất cả các hộp ngoại trừ Sales Sales.
  5. Bấm OK. Bây giờ bạn sẽ chỉ thấy các hàng có tình trạng việc làm trong dịch vụ, hoặc trên máy chủ và bộ phận của bộ phận và bộ phận bán hàng.

Bây giờ là lúc để xóa các hàng ẩn. Có ba cách để làm điều này.

Xóa các hàng ẩn bằng tính năng tài liệu kiểm tra

Nếu bạn chắc chắn rằng bạn sẽ không bao giờ cần phải làm việc với dữ liệu ẩn nữa, thì phương pháp này có thể hoạt động cho bạn:

  1. Tạo một bản sao lưu của sổ làm việc của bạn (chỉ trong trường hợp).
  2. Nhấp vào Tệp-> Kiểm tra các vấn đề.
  3. Nhấp vào kiểm tra tài liệu.
    Hướng dẫn how do i delete visible filtered rows in excel? - làm cách nào để xóa các hàng đã lọc hiển thị trong excel?
  4. Điều này sẽ mở ‘Tài liệu Thanh tra. Nhấp vào nút ‘Kiểm tra nút ở dưới cùng của cửa sổ.
    Hướng dẫn how do i delete visible filtered rows in excel? - làm cách nào để xóa các hàng đã lọc hiển thị trong excel?
  5. Khi bạn cuộn xuống danh sách các tùy chọn được cung cấp, bạn sẽ thấy một tùy chọn cho biết các hàng và cột ẩn. Nó cũng sẽ cho bạn biết có bao nhiêu hàng và cột ẩn có mặt trong bảng tính của bạn.
  6. Nhấp vào nút Xóa tất cả. Điều này sẽ xóa vĩnh viễn tất cả các hàng ẩn trong bảng của bạn.
    Hướng dẫn how do i delete visible filtered rows in excel? - làm cách nào để xóa các hàng đã lọc hiển thị trong excel?
  7. Nhấp vào ‘Đóng.
  8. Quay trở lại trang tính của bạn và xóa tất cả các bộ lọc bằng cách nhấp vào nút bộ lọc từ tab Dữ liệu.

Bạn sẽ thấy rằng ngay cả sau khi tất cả các bộ lọc được gỡ bỏ, bạn chỉ còn lại các hàng yêu cầu của mình. Tất cả các hàng khác đã bị xóa.

Xóa các hàng ẩn bằng cách tạo một cột tạm thời

Nếu bạn không thực sự muốn bận tâm đến việc tạo sao lưu hoặc lo lắng về việc thực hiện các thay đổi vĩnh viễn cho các tờ khác trong bảng tính của bạn, thì đây là một cách khác (nhiều mẹo hơn) để loại bỏ các hàng ẩn của bạn:

  1. Tạo một cột tạm thời ở bất cứ đâu trong bộ dữ liệu của bạn.
  2. Nhập A ‘0 trên ô đầu tiên của cột này và nhấn phím trả về.
  3. Nhấp đúp chuột vào tay cầm điền (ở góc dưới bên phải) của ô này. Điều này sẽ sao chép số ‘0, vào phần còn lại của các ô cột.
  4. Xóa các bộ lọc (bằng cách nhấp vào nút bộ lọc khỏi tab Dữ liệu). Điều này cũng sẽ mang lại tất cả các hàng ẩn của bạn.
  5. Bây giờ bạn cần đảo ngược bộ lọc. Đối với điều này, chọn khu vực làm việc của bạn và nhấp vào nút bộ lọc. Chọn mũi tên bên cạnh tiêu đề của cột tạm thời và bỏ chọn hộp kiểm bên cạnh ‘0.
  6. Chọn tất cả các hàng này, nhấp chuột phải và chọn Xóa Xóa.
  7. Một lần nữa xóa các bộ lọc bằng cách nhấp vào nút bộ lọc.

Bây giờ bạn nên chỉ còn lại với các hàng yêu cầu của bạn.

Xóa các hàng được lọc được ẩn bằng VBA

Một lần nữa, ở đây, một cách nhanh hơn để hoàn thành nhiệm vụ trên. Bạn sẽ tìm thấy bên dưới một tập lệnh ngắn mà bạn có thể sao chép, tùy chỉnh và sử dụng:

Sub KeepVisibleRows()
Dim myUnion As Range
Dim myRow As Range
Dim Rng As Range
Set Rng = Selection
Rng.AutoFilter Field:=4, Criteria1:="Sales"
Rng.AutoFilter Field:=5, Criteria1:="<>Retired"
ForEach myRow In Rng.Rows
If myRow.Hidden Then
If Not myUnion IsNothingThen
Set myUnion = Union(myUnion, myRow)
Else
Set myUnion = myRow
EndIf
EndIf
Next
myUnion.Delete
ActiveSheet.AutoFilterMode = False
End Sub

Thực hiện theo các bước sau để sử dụng mã trên:

  1. Chọn tất cả các hàng bạn cần lọc (bao gồm các tiêu đề cột)
  2. Từ ruy băng menu nhà phát triển, chọn Visual Basic.
  3. Khi cửa sổ VBA của bạn mở, nhấp vào Chèn-> Mô-đun và dán mã trên trong cửa sổ mô-đun.
  4. Chạy tập lệnh này bằng cách điều hướng đến Nhà phát triển-> Macros-> KeepVisiBlerows hoặc nhấp vào nút phát màu xanh lá cây từ thanh công cụ trên đầu.

Ở đây, một lời giải thích về mã:

  • Mã này có một lựa chọn các hàng và áp dụng ‘autofilter, cho nó theo tiêu chí của bạn (dòng 6 và 7).
    Rng.AutoFilter Field:=4, Criteria1:="Sales"
    
    Rng.AutoFilter Field:=5, Criteria1:="<>Retired"
  • Trong dòng số 6, chúng tôi đã chỉ định rằng chúng tôi chỉ muốn các hàng có bộ phận bằng với Sales Sales (cột 4) được hiển thị.
    Rng.AutoFilter Field:=4, Criteria1:="Sales"
  • Tương tự, trong dòng 7, chúng tôi đã chỉ định rằng chúng tôi chỉ muốn các hàng có trạng thái việc làm không bằng với đã nghỉ hưu (Cột 5) được hiển thị (biểu tượng của Hồi có nghĩa là không bằng với).
    Rng.AutoFilter Field:=5, Criteria1:="<>Retired"
  • Hai dòng này đảm bảo rằng chỉ các hàng thỏa mãn cả hai tiêu chí được hiển thị, trong khi các hàng khác vẫn ẩn.
  • Sau đó, mã các vòng lặp qua mỗi hàng và kiểm tra xem bất kỳ trong số chúng có được ẩn không (dòng 9). ________số 8
  • Nếu vậy, chúng được nhóm lại với nhau thành một phạm vi tạm thời có tên là Myunion. Một khi tất cả các hàng đã được lặp qua, tất cả các hàng ẩn sẽ được thêm vào Myunion.
    Set myUnion = Union(myUnion, myRow)
  • Sau khi kết thúc vòng lặp, tất cả các hàng được nhóm lại trong Myunion sẽ bị xóa (dòng 17). Điều này có nghĩa là tất cả các hàng ẩn sẽ bị xóa trong một lần.
    Rng.AutoFilter Field:=5, Criteria1:="Retired"
    0
  • Cuối cùng, tất cả các bộ lọc sẽ bị xóa bằng cách đặt tấm AutofilterMode của tờ thành False (dòng 18).
    ActiveSheet.AutoFilterMode = False

Lưu ý: Như đã đề cập trước đây, bạn có thể thay đổi dòng 6 và 7 để phù hợp với tiêu chí lọc của riêng bạn. Nếu bạn có nhiều tiêu chí, bạn có thể lặp lại các dòng này cho từng tiêu chí.

Sự kết luận

Trong hướng dẫn này, chúng tôi đã chỉ cho bạn hai cách để xóa các hàng có thể nhìn thấy sau khi áp dụng các bộ lọc cho chúng và ba cách để xóa các hàng ẩn sau khi áp dụng các bộ lọc.

Chúng tôi cũng đã cung cấp các tập lệnh VBA ngắn để giúp bạn hoàn thành công việc nhanh hơn nếu bạn cảm thấy tự tin khi sử dụng các tập lệnh. Chúng tôi hy vọng bạn tìm thấy hướng dẫn này hữu ích.

Hãy cho chúng tôi biết trong các ý kiến ​​nếu bạn phải đối mặt với bất kỳ vấn đề nào trong khi làm theo bất kỳ bước nào.

Các hướng dẫn Excel khác mà bạn có thể thấy hữu ích:

  • Cách làm nổi bật mọi hàng khác trong Excel (định dạng có điều kiện & VBA)
  • Cách bỏ tất cả các hàng trong Excel với VBA
  • Cách đặt hàng để in trên mỗi trang trong Excel
  • Cách xóa một tờ trong Excel bằng VBA
  • Cách dán vào cột được lọc bỏ qua các ô ẩn
  • Cách ẩn các cột dựa trên giá trị ô trong Excel
  • Cách thêm tổng số hàng trong bảng Excel
  • Cách chọn hàng với văn bản cụ thể trong Excel
  • Làm thế nào để loại bỏ các hàng trùng lặp dựa trên một cột trong Excel?
  • Làm thế nào để di chuyển hàng sang một tờ khác dựa trên giá trị ô trong Excel?
  • Làm thế nào để xóa bộ lọc trong excel? Đường tắt!