Có lẽ tương đối nhiều người khi áp dụng Excel đều chạm mặt phải vụ việc về bài toán nhận kết quả kỳ lạ do các dữ liệu đụng hàng nhau trong một dải ô. Điều này sẽ để cho các hàm như VLOOKUP mang đến ra kết quả sai, từ kia dẫn mang đến tính tổng bị sai. Nội dung bài viết dưới trên đây sẽ lý giải bạn chi tiết cách xóa những dữ liệu trùng nhau trong Excel


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

Với biện pháp nay, bạn sẽ dùng hàm COUNTIF để khẳng định được rằng gồm 2 hay nhiều tài liệu bị trùng lặp trong ô giỏi không. Nếu những dữ liệu trùng lạp đã được tìm thấy thì những hàng đó sẽ sở hữu dán nhãn “trùng”.

Bạn đang xem: Xóa dòng trùng nhau trong excel

*


Bạn cũng có thể thiết lập trước format có điều kiện để đánh dấu trùng lặp. Bằng phương pháp sau:

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

Từ đấy, bạn chỉ việc nhấn nút OK khi lộ diện hộp thoại và bất kỳ ô như thế nào trùng lặp rất nhiều sẽ được ghi lại bằng vấn đề tô hết ô bằng màu đỏ. Cách này rất có thể dùng kiểm tra dữ liệu để xem xem có bất kể sự giống nhau nào tốt không.

*

*

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

Cuối cùng là cách thức sử dụng mang đến VBA automator. Dưới đó là ví dụ về một macro nho nhỏ đã được tổng hợp, xác minh được liệu bạn có bất kì giá trị giống nhau nào phía bên trong dải ô đã lựa chọn hay không. Sau khi thực hiện tại chạy mã VBA Macro này, bạn sẽ nhìn thấy một tin nhắn cho thấy thêm rằng bạn có bao nhiêu ô trùng lặp được kiếm tìm ra cùng nó sẽ hỏi rằng liệu bạn cũng muốn bôi vàng những ô này không?

*

Sub SearchForDuplicates()Dim rng As RangeDim rngFind As RangeDim cell As RangeDim DupAddresses As StringDim SearchList As StringDim Delimiter As String’Setup VariablesSet rng = SelectionDelimiter = “-;;-“‘Loop through each cell in selectionFor 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 ThenSearchList = SearchList và cell.Value và DelimiterSet rngFind = rng.Find(what:=cell.Value, LookIn:=xlValues, _lookat:=xlWhole, searchdirection:=xlNext)

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

‘Find any next instances of valueDoSet rngFind = rng.FindNext(rngFind)If rngFind.Address = FirstAddress Then Exit DoDupAddresses = DupAddresses & rngFind.Address và “,”Loop

End IfEnd IfEnd IfNext cell

‘Report ResultsIf DupAddresses “” ThenSet rng = Range(Left(DupAddresses, Len(DupAddresses) – 1))UserAnswer = MsgBox(rng.Count & ” duplicate values were found,” _& ” would you lượt thích them khổng lồ be highlighted in yellow?”, vbYesNo)If UserAnswer = vbYes Then rng.Interior.Color = vbYellowElseMsgBox “No duplicate cell values were found”End If

End Sub

Bạn nên xem xét rằng mã này không ghi lại ô thứ nhất có chứa tài liệu trùng lặp, tự ô máy hai trở đi new được đánh dấu.

Xem thêm: Hướng Dẫn 3 Cách Gõ Công Thức Toán Học Trong Word 2010 Bị Ẩn

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

Có một nút xóa tài liệu trùng lặp vị trí thanh Ribbon, là 1 trong tính năng tốt vời giúp đỡ bạn tiết kiệm được rất nhiều thời gian lúc thao tác. Bạn chỉ cần di chuyển đến tab Data nằm trên thanh Ribbon, nhấn vào vào Remove Duplicates, kế tiếp điền vào vỏ hộp thoại để tiến hành xóa những dữ liệu trùng lặp tùy vào từng nhu cầu của bạn.

*

Bạn cũng có thể thực hiện truy cập nút Remove Duplicates nằm bên phía trong Table Tools – thiết kế Ribbon tab nếu khách hàng đang thao tác làm việc với bảng.

*

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

Mã VBA dưới sẽ chỉ các bạn cách phần nhiều hàng giống nhau theo đồ vật tự vào dải ô được chọn mà ko cần đổi khác dải ô thành bảng. Nó đã hỏi liệu bạn cũng muốn xóa đều ô trùng lặp trước lúc xóa lâu dài dữ liệu.

*

Sub DeleteDuplicates()Dim rng As RangeDim rngFind As RangeDim cell As RangeDim DupAddresses As StringDim SearchList As StringDim Delimiter As String

‘Setup VariablesSet rng = SelectionDelimiter = “-;;-”

‘Loop through each cell in selectionFor 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 và Delimiter) = 0 ThenSearchList = SearchList & cell.Value và Delimiter

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

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

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

End IfEnd IfEnd IfNext cell

‘Report ResultsIf DupAddresses “” ThenSet rng = Range(Left(DupAddresses, Len(DupAddresses) – 1))rng.Select

UserAnswer = MsgBox(rng.Count & ” duplicate values were found,” _& ” would you lượt thích to delete any duplicate rows found?”, vbYesNo)If UserAnswer = vbYes Then Selection.Delete Shift:=xlUpElseMsgBox “No duplicate cell values were found”End If

Bài viết liên quan