Hướng dẫn cách xóa các dữ liệu trùng nhau trong Excel

VẤN ĐỀ TRÙNG LẶP

Chắc hẳn ai trong chứng ta khi làm việc với Excel đều một lần gặp các trường hợp ghi nhận kết quả kì lạ do dữ liệu trùng lặp trong dải ô. Vấn đề này sẽ dễ làm cho các hàm VLOOKUP cho ra kết quả sai, dẫn tới việc tính tổng cũng bị sai. Vậy thì làm thế nào để kiểm tra? Bài viết dưới đây sẽ hướng dẫn chi tiết cho bạn cách xóa các dữ liệu trùng nhau trong Excel nhé!

CÁCH TÌM DỮ LIỆU TRÙNG LẶP TRONG BẢNG TÍNH

CÁCH 1: SỬ DỤNG CÔNG THỨC

Trong cách đầu tiên, chúng ta sẽ dùng hàm COUNTIF để thực hiện xác định xem có hai hay nhiều dữ liệu tại ô bị trùng lặp hay không. Nếu như những dữ liệu trùng lặp được tìm thấy thì những hàng đó sẽ được dán tag “trùng lặp”. Và bạn hoàn toàn có thể thay đổi tên nhãn bằng bất kì từ nào khác mà bạn muốn.

CÁCH 2: SỬ DỤNG ĐỊNH DẠNG CÓ ĐIỀU KIỆN

Bạn hoàn toàn có thể thiết lập trước định dạng có điều kiện để tránh trùng lặp. Rất đơn giản, bạn chỉ cần đánh dấu dữ liệu trong ô, sau đó đi đến:

Home Ribbon Tab > Conditional Formatting > Highlight Cells Rules > Duplicate Values…

Từ đây, bạn sẽ chỉ cần nhấn nút OK mỗi khi hộp thoại xuất hiện và bất kì ô nào trùng lặp sẽ được đánh dấu bằng việc tô hết ô thành màu đỏ. Nếu như file của bạn có hàng ngàn hàng, và bạn không muốn phải thực hiện cuộn xuống từng ô để kiểm tra ô nào có màu đỏ? Đơn giản hơn, bạn có thể dễ dàng lọc dữ liệu rồi kiểm tra xem liệu bạn có thể lọc các ô có màu đỏ hay không.

Phương pháp này có thể nhanh chóng sử dụng cho dữ liệu để kiểm tra xem có bất kỳ sự trùng lặp nào không.

CÁCH 3: SỬ DỤNG LẬP TRÌNH VBA MACRO

Phương pháp thứ 3 sẽ rất phù hợp cho các chuyên gia bảng tính thật sự, đó là giải pháp dành cho VBA automator! Dưới đây sẽ là một macro nho nhỏ mà chúng tôi đã tổng hợp. Macro này sẽ giúp xác định liệu rằng bạn có bất cứ giá trị trùng lặp nào trong dải ô mà bạn đã chọn hay không.

Sau khi thực hiện chạy mã VBA Macro này, bạn sẽ tìm thấy một hộp tin nhắn cho biết rằng bạn có bao nhiều ô trùng lặp được tìm thấy, và nó sẽ hỏi thêm rằng liệu bạn có muốn thực hiện tô vàng các ô này. Đây được đánh giá là một sự bổ sung tuyệt vời cho Macro Workbook cá nhân của bạn đấy!

 

Sub SearchForDuplicates()
Dim rng As Range
Dim rngFind As Range
Dim cell As Range
Dim DupAddresses As String
Dim SearchList As String
Dim Delimiter As String’Setup Variables
Set rng = Selection
Delimiter = “-;;-“‘Loop through each cell in selection
For Each cell In rng.Cells
‘Does cell have value?
If cell.Value <> “” Then
‘Has value been searched for yet?
If InStr(1, SearchList, cell.Value & Delimiter) = 0 Then
SearchList = SearchList & cell.Value & Delimiter 

Set rngFind = rng.Find(what:=cell.Value, LookIn:=xlValues, _
lookat:=xlWhole, searchdirection:=xlNext)

If Not rngFind Is Nothing Then
‘Record first instance found
FirstAddress = rngFind.Address

‘Find any next instances of value
Do
Set rngFind = rng.FindNext(rngFind)
If rngFind.Address = FirstAddress Then Exit Do
DupAddresses = DupAddresses & rngFind.Address & “,”
Loop

End If
End If
End If
Next cell

‘Report Results
If DupAddresses <> “” Then
Set rng = Range(Left(DupAddresses, Len(DupAddresses) – 1))
UserAnswer = MsgBox(rng.Count & ” duplicate values were found,” _
& ” would you like them to be highlighted in yellow?”, vbYesNo)
If UserAnswer = vbYes Then rng.Interior.Color = vbYellow
Else
MsgBox “No duplicate cell values were found”
End If

End Sub

  • Bạn hãy lưu ý rằng mã này sẽ không đánh dấu ô đầu tiên có dữ liệu trùng lặp. Chỉ từ ô thứ hai trở đi mới được đánh dấu.

Xem thêm: Hướng dẫn cách vẽ đồ thị bằng Excel đơn giản, nhanh chóng

CÁCH XÓA DỮ LIỆU TRÙNG LẶP KHỎI BẢNG TÍNH CỦA BẠN

CÁCH 1: SỬ DỤNG NÚT REMOVE DUPLICATES

Bạn có biết có một nút có công dụng xóa dữ liệu trùng lặp trên thanh Ribbon hay không? Đây được xem là một tính năng tuyệt vời, bởi vì nó có công dụng hỗ trợ bạn tiết kiệm được rất nhiều thời gian. Bạn chỉ cần di chuyển chuột đến tab Data trên thanh Ribbon. Sau đó, nhấp chuột vào Remove Duplicates rồi tiến hành điền vào hộp thoại để thực hiện xóa các dữ liệu trùng lặp tùy vào nhu cầu của bạn.

Ngoài ra, bạn cũng có thể truy cập nút Remove Duplicates tại Table Tools – Design Ribbon tab nếu bạn đang thao tác với bảng.

CÁCH 2: SỬ DỤNG LẬP TRÌNH VBA

Mã VBA dưới đây sẽ chỉ cho bạn cách những hàng trùng lặp theo thứ tự trong dải ô được chọn mà không cần phải thay đổi dải ô thành bảng. Nó sẽ hỏi xem liệu bạn có muốn xóa các ô trùng lặp trước khi thực hiện xóa vĩnh viễn dữ liệu.

 

Sub DeleteDuplicates() 

Dim rng As Range
Dim rngFind As Range
Dim cell As Range
Dim DupAddresses As String
Dim SearchList As String
Dim Delimiter As String

‘Setup Variables
Set rng = Selection
Delimiter = “-;;-“

‘Loop through each cell in selection
For Each cell In rng.Columns(1).Cells
‘Does cell have value?
If cell.Value <> “” Then
‘Has value been searched for yet?
If InStr(1, SearchList, cell.Value & Delimiter) = 0 Then
SearchList = SearchList & cell.Value & Delimiter

Set rngFind = rng.Find(what:=cell.Value, LookIn:=xlValues, _
lookat:=xlWhole, searchdirection:=xlNext)

If Not rngFind Is Nothing Then
‘Record first instance found
FirstAddress = rngFind.Address

‘Find any next instances of value
Do
Set rngFind = rng.FindNext(rngFind)
If rngFind.Address = FirstAddress Then Exit Do
Set rngFind = rngFind.Resize(1, rng.Columns.Count)
DupAddresses = DupAddresses & rngFind.Address & “,”
Loop

End If
End If
End If
Next cell

‘Report Results
If DupAddresses <> “” Then
Set rng = Range(Left(DupAddresses, Len(DupAddresses) – 1))
rng.Select

UserAnswer = MsgBox(rng.Count & ” duplicate values were found,” _
& ” would you like to delete any duplicate rows found?”, vbYesNo)
If UserAnswer = vbYes Then Selection.Delete Shift:=xlUp
Else
MsgBox “No duplicate cell values were found”
End If

End Sub

Hi vọng những thông tin về cách xóa các dữ liệu trùng nhau trong Excel mà chúng tôi truyển tải trong bài viết trên sẽ giúp ích được cho bạn!

Xem thêm: Hướng dẫn cách chia lấy phần nguyên trong Excel

Tin tức liên quan

Gửi bình luận

Email của bạn sẽ không được hiển thị công khai.