Bỏ qua nội dung chính

Làm cách nào để loại bỏ các hàng trùng lặp và chỉ giữ các giá trị cao nhất trong Excel?

Ví dụ: bạn có một bảng mua hàng trong Excel như ảnh chụp màn hình đầu tiên được hiển thị. Bây giờ bạn cần loại bỏ các hàng trùng lặp dựa trên cột Trái cây và giữ giá trị cao nhất của các loại trái cây tương ứng trong cột Số lượng như ảnh chụp màn hình thứ hai được hiển thị. Bất kỳ giải pháp nào bạn có thể nghĩ ra? Bài viết này sẽ chia sẻ hai thủ thuật để giải quyết nó.

Loại bỏ các hàng trùng lặp và chỉ giữ lại các giá trị cao nhất với VBA

Loại bỏ các hàng trùng lặp và chỉ giữ các giá trị cao nhất với Kutools cho Excel

Dễ dàng loại bỏ các hàng trùng lặp dựa trên tiêu chí trong một cột và chỉ giữ lại các giá trị cao nhất trong Excel

Kutools cho Excel's Các hàng kết hợp nâng cao tiện ích có thể giúp người dùng Excel nhanh chóng tìm ra giá trị lớn nhất và giá trị nhỏ nhất của từng mục trong cột khác một cách dễ dàng.

quảng cáo nâng cao kết hợp hàng tối đa

Tiện ích Hàng Kết hợp Nâng cao này cũng có thể kết hợp các hàng và phân tách các giá trị bằng các dấu được chỉ định hoặc kết hợp các hàng và tính tổng của chúng, số lần xuất hiện, giá trị tối đa / tối thiểu, giá trị trung bình, v.v.


Giả sử bạn có một bảng như ảnh chụp màn hình bên dưới. Và phương pháp này sẽ giới thiệu một macro VBA để loại bỏ các hàng trùng lặp dựa trên một cột nhất định và chỉ giữ các giá trị cao nhất trong một cột khác trong Excel. Vui lòng làm như sau:

1. Nhấn nút Khác + F11 đồng thời để mở cửa sổ Microsoft Visual Basic for Applications.

2. nhấp chuột Chèn > Mô-đunvà dán mã sau vào cửa sổ Mô-đun mở mới.

VBA: Loại bỏ các hàng trùng lặp và giữ các giá trị cao nhất

Public Sub DelDupes()
Dim xFilterRg As Range
Dim xCriteriaRg As Range
Dim xAddress As String
Dim xSUpdate As Boolean
On Error Resume Next
xAddress = Application.ActiveWindow.RangeSelection.Address
Set xFilterRg = Application.InputBox("Please select a range:", "Kutools for Excel", xAddress, , , , , 8)
If xFilterRg Is Nothing Then Exit Sub
Set xFilterRg = Application.Intersect(ActiveSheet.UsedRange, xFilterRg)
If xFilterRg Is Nothing Then Exit Sub
On Error GoTo 0
xSUpdate = Application.ScreenUpdating
Application.ScreenUpdating = False
Set xCriteriaRg = ActiveSheet.Cells(1, xFilterRg.Column + xFilterRg.Columns.Count).Resize(2)
xCriteriaRg.Resize(1).Offset(1).Formula = "=COUNTIF(" & xFilterRg(2, 1).Address & ":" & _
xFilterRg(2, 1).Address(False, False) & "," & _
xFilterRg(2, 1).Address(False, False) & ")>1"
With xFilterRg
.Sort key1:=xFilterRg.Cells(1, 1).Offset(0, 1), order1:=xlDescending, Header:=xlYes
.AdvancedFilter Action:=xlFilterInPlace, CriteriaRange:=xCriteriaRg
.Offset(1).SpecialCells(xlCellTypeVisible).EntireRow.Delete
.Parent.ShowAllData
End With
xCriteriaRg.Clear
Application.ScreenUpdating = xSUpdate
End Sub

3. Nhấn nút F5 phím hoặc nhấp vào chạy để chạy VBA này.

4. Bây giờ một hộp thoại xuất hiện. Vui lòng chọn các cột mà bạn sẽ loại bỏ các hàng trùng lặp và đặt trước các giá trị cao nhất, và nhấp vào OK .

Trong trường hợp của chúng tôi, chúng tôi sẽ loại bỏ các hàng trùng lặp theo Cột Trái cây và giữ giá trị cao nhất trong Cột Số lượng, do đó tôi chọn cột Trái cây và cột Số lượng như ảnh chụp màn hình ở trên.

Sau đó, bạn sẽ thấy các hàng trùng lặp được loại bỏ dựa trên cột Trái cây và giá trị cao nhất của các loại trái cây tương ứng được giữ trong cột Số lượng. Xem ảnh chụp màn hình:

Chú ý:

(1) Phạm vi được chỉ định phải bắt đầu bằng cột mà bạn sẽ loại bỏ các hàng trùng lặp.

(2) VBA này chỉ có thể giữ các giá trị cao nhất trong cột ngay sau cột mà bạn đã loại bỏ các hàng trùng lặp.

(3) VBA này không hoạt động trong Microsoft Excel 2007.


VBA ở trên có thể không đủ dễ dàng đối với một số người dùng và nó chỉ có thể giữ giá trị cao nhất trong cột sau cột tiêu chí. Nhưng Kutools cho Excel's Các hàng kết hợp nâng cao tiện ích sẽ giúp bạn dễ dàng giải quyết vấn đề này một cách dễ dàng.

Kutools cho Excel - Được đóng gói với hơn 300 công cụ cần thiết cho Excel. Tận hưởng bản dùng thử MIỄN PHÍ 30 ngày đầy đủ tính năng mà không cần thẻ tín dụng! Tải ngay!

1. Chọn bảng bạn sẽ loại bỏ các hàng trùng lặp và giữ các giá trị cao nhất (chọn A1: C24 trong trường hợp của chúng tôi), và nhấp vào Kutools > Nội dung > Các hàng kết hợp nâng cao.

2. Trong hộp thoại Kết hợp Hàng Dựa trên Cột mở, vui lòng cấu hình như sau:

(1) Chọn cột Trái cây (mà bạn sẽ loại bỏ các hàng trùng lặp), sau đó nhấp vào Khóa chính Nút;

(2) Chọn cột Số tiền (Bạn sẽ giữ các giá trị cao nhất), sau đó nhấp vào Tính toán > Max.

(3) Chỉ định quy tắc kết hợp cho các cột khác khi bạn cần.

doc loại bỏ các bản sao giữ giá trị cao nhất 2

3. Nhấp vào Ok cái nút. Và sau đó, bạn sẽ thấy tất cả các hàng trùng lặp được loại bỏ dựa trên Cột Trái cây và chỉ giá trị tối đa của các loại trái cây tương ứng được giữ trong cột Số lượng. Xem ảnh chụp màn hình:

Sản phẩm Các hàng kết hợp nâng cao tiện ích của Kutools cho Excel có thể dễ dàng kết hợp các hàng theo một cột và sau đó tính toán các cột khác cũng dựa trên các cột này, chẳng hạn như Tổng, Đếm, Tối đa, Tối thiểu, Sản phẩm, v.v. Nhấp để dùng thử miễn phí 60 ngày, không giới hạn!


Kutools cho Excel: Hơn 300 công cụ tiện dụng trong tầm tay bạn! Bắt đầu dùng thử miễn phí 30 ngày không có giới hạn tính năng ngay hôm nay. Download Now!

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

🤖 Trợ lý AI của Kutools: Cách mạng hóa việc phân tích dữ liệu dựa trên: Thực thi thông minh   |  Tạo mã  |  Tạo công thức tùy chỉnh  |  Phân tích dữ liệu và tạo biểu đồ  |  Gọi các hàm Kutools...
Các tính năng phổ biến: Tìm, đánh dấu hoặc xác định các bản sao   |  Xóa hàng trống   |  Kết hợp các cột hoặc ô mà không làm mất dữ liệu   |   Vòng không có công thức hữu ích. Cảm ơn !
Siêu tra cứu: Nhiều tiêu chí VLookup    VLookup Nhiều Giá Trị  |   VLookup trên nhiều trang tính   |   Tra cứu mờ ....
Danh sách thả xuống nâng cao: Tạo nhanh danh sách thả xuống   |  Danh sách thả xuống phụ thuộc   |  Danh sách thả xuống nhiều lựa chọn ....
Trình quản lý cột: Thêm một số cột cụ thể  |  Di chuyển cột  |  Chuyển đổi trạng thái hiển thị của các cột ẩn  |  So sánh dãy và cột hữu ích. Cảm ơn !
Các tính năng nổi bật: Tiêu điểm lưới   |  Chế độ xem thiết kế   |   Thanh công thức lớn    Trình quản lý sổ làm việc & trang tính   |  Thư viện tài nguyên (Văn bản tự động)   |  Bảng chọn ngày   |  Kết hợp các bảng tính   |  Mã hóa/Giải mã ô    Gửi email theo danh sách   |  Siêu lọc   |   Bộ lọc đặc biệt (lọc in đậm/nghiêng/gạch ngang...) ...
15 bộ công cụ hàng đầu12 bản văn CÔNG CỤ (thêm văn bản, Xóa ký tự,...)   |   50 + Biểu đồ Các loại (Biểu đồ Gantt,...)   |   40+ Thực tế Công thức (Tính tuổi dựa trên ngày sinh,...)   |   19 chèn CÔNG CỤ (Chèn mã QR, Chèn ảnh từ đường dẫn,...)   |   12 Chuyển đổi CÔNG CỤ (Số thành từ, Chuyển đổi tiền tệ,...)   |   7 Hợp nhất & Tách CÔNG CỤ (Các hàng kết hợp nâng cao, Chia ô,...)   |   ... và nhiều hơn nữa

Nâng cao kỹ năng Excel của bạn với Kutools for Excel và trải nghiệm hiệu quả hơn bao giờ hết. Kutools for Excel cung cấp hơn 300 tính năng nâng cao để tăng năng suất và tiết kiệm thời gian.  Bấm vào đây để có được tính năng bạn cần nhất...

Mô tả


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!
Comments (1)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
in VBA example, the date column doesn't filter. please advise.
There are no comments posted here yet
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations