前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >使用VBA删除工作表多列中的重复行

使用VBA删除工作表多列中的重复行

作者头像
fanjy
发布2022-11-16 12:48:56
11.1K0
发布2022-11-16 12:48:56
举报
文章被收录于专栏:完美Excel

标签:VBA

自Excel 2010发布以来,已经具备删除工作表中重复行的功能,如下图1所示,即功能区“数据”选项卡“数据工具——删除重复值”。

图1

使用VBA,可以自动执行这样的操作,删除工作表所有数据列中的重复行,或者指定列的重复行。

下面的Excel VBA代码,用于删除特定工作表所有列中的所有重复行。

代码语言:javascript
复制
Sub DeDupeCols()
    Dim rng As Range
    Dim i As Integer
    Dim Cols As Variant
    Set rng = [A1].CurrentRegion
    ReDim Cols(0 To rng.Columns.Count - 1)
    For i = 0 To UBound(Cols)
        Cols(i) = i + 1
    Next i
    rng.RemoveDuplicates Columns:=(Cols), Header:=xlYes
End Sub

这里使用了当前区域,假设标题位于第一行。如果没有标题行,则删除代码后面的部分。

如果只想删除指定列(例如第1、2、3列)中的重复项,那么可以使用下面的代码:

代码语言:javascript
复制
Sub DeDupeColSpecific()
    Cells.RemoveDuplicates Columns:=Array(1, 2, 3), Header:=xlYes
End Sub

可以修改代码中代表列的数字,以删除你想要的列中的重复行。这点很有用。

注:本文学习整理自thesmallman.com,略有修改,供有兴趣的朋友参考。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2022-08-10,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 完美Excel 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档