百科 > IT百科 > 系统软件 > Excel > 正文

如何用Excel宏代码批量删除数据列的重复值

  下面将介绍一下如何使用宏代码批量快速删除EXCEL某列数据的重复值,仅保留重复值的其中一个(第一个);

用Excel批量删除数据列的重复值1

操作步骤

  第一步、如下图,假设,在A列中存在这样的数据列,请仔细观察数据,是不是存在重复值呢?

用Excel批量删除数据列的重复值2

  第二步、要想删除重复的值,首先,在EXCEL窗口中,我们直接按组合键Alt+F11,弹出如下图的另外一个窗口!

用Excel批量删除数据列的重复值3

  第三步、上图中,默认未弹出代码窗口,请如上图所示,执行“视图”→“代码窗口”,弹出如下图的窗口;

 用Excel批量删除数据列的重复值4

  第四步、请输入上图的代码,为方便操作,提供文本代码以供网友复制粘贴!

  Sub DeleteColumnDupes()

  Dim strSheetName As String, strColumnLetter As String

  strSheetName = "Sheet1" ' 删除工作表中的重复行

  strColumnLetter = "A" ' 以 A 列中的重复项作为删除条件

  Dim strColumnRange As String

  Dim rngCurrentCell As Range

  Dim rngNextCell As Range

  strColumnRange = strColumnLetter & "1"

  Worksheets(strSheetName).Range(strColumnRange).Sort _

  Key1:=Worksheets(strSheetName).Range(strColumnRange)

  Set rngCurrentCell = Worksheets(strSheetName).Range(strColumnRange)

  Do While Not IsEmpty(rngCurrentCell)

  Set rngNextCell = rngCurrentCell.Offset(1, 0)

  If rngNextCell.Value = rngCurrentCell.Value Then

  rngCurrentCell.EntireRow.Delete

  End If

  Set rngCurrentCell = rngNextCell

  Loop

  End Sub

  代码输入好之后,直接按F5运行,或者如下图所示点击“运行”按钮即可!

 用Excel批量删除数据列的重复值5

  第五步、运行成功之后,退出该窗口,返回EXCEL窗口,即可看到效果了!

网友评论