打印本文 打印本文 关闭窗口 关闭窗口
利用Excel宏代码快速批量删除数据列的重复值
作者:武汉SEO闵涛  文章来源:敏韬网  点击数1372  更新时间:2009/6/9 2:18:52  文章录入:mintao  责任编辑:mintao

  如题目所示,本例我们来介绍一下如何使用宏代码批量快速删除EXCEL某列数据的重复值,仅保留重复值的其中一个(第一个);

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


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


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


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

   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窗口,即可看到效果了!

  以上代码为无名网友提供,版权仍归原作者所有!

打印本文 打印本文 关闭窗口 关闭窗口