批量删除重复行 您所在的位置:网站首页 表格批量去重 批量删除重复行

批量删除重复行

2023-01-05 00:59| 来源: 网络整理| 查看: 265

在日常工作中,经常会遇到一些数据处理的问题,今天给大家分享一个批量删除所有重复行并保留唯一数据行的方法。

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 实验室设备网 版权所有