批量删除重复行 | 您所在的位置:网站首页 › 表格批量去重 › 批量删除重复行 |
在日常工作中,经常会遇到一些数据处理的问题,今天给大家分享一个批量删除所有重复行并保留唯一数据行的方法。 1.VBA删除重复行通过Excel中单元格数据判断该行是否为重复行,假设将Excel中第i行第1个单元格作为唯一值进行判断,即A1、B1、C1单元格的内容……具体代码行如下: If WorksheetFunction.CountIf(.Columns(1), .Cells(i, 1)) > 1 Then '根据唯一值所在单元格判断重复行如果将第i行第2个单元格作为唯一值进行判断该行是否为重复数据行,则需将上述代码行中CountIf(.Columns(1), .Cells(i, 1))改为CountIf(.Columns(2), .Cells(i, 2))。 如果是将第i行第n个单元格作为唯一值进行判断该行是否为重复数据行,则需将CountIf(.Columns(n), .Cells(i, n))改为CountIf(.Columns(n), .Cells(i, n))。 下面,笔者将第i行第1个单元格作为唯一值进行判断,代码如下: Sub 删除重复行() Dim r As Integer Dim i As Integer With Sheets("sheet1") '需处理的表单 r = .[a65536].End(xlUp).Row For i = r To 1 Step -1 If WorksheetFunction.CountIf(.Columns(1), .Cells(i, 1)) > 1 Then '根据唯一值所在单元格判断重复行 .Rows(i).Delete End If Next End With End Sub注:看不到代码向右拖动进度条。 2.Excel函数筛选重复项除了使用VBA之外,还可以通过Excel函数对行数据进行标识“重复项”。如笔者将学号作为唯一值,从而判断Excel行数据是否有重复行。函数如下: =IFERROR(IF(COUNTIF($B$2:B2,B2)=1,"","重复"),"") |
CopyRight 2018-2019 实验室设备网 版权所有 |