RemoveDuplicates后边必须跟参数否则不起作用

ActiveSheet.Range("G21:R36").RemoveDuplicates Columns:=12, Header:=xlYes

其中Columns参数指定要删除重复项的列,如果是1的话,那么第一列中重复项所在行都会被删除,如果是2则只有1,2两列均重复的行才会被删除,以此类推,你的区域12列,那么只有12列均重复的行会被删除。

如果想在12列中只根据某几列的重复来删除,比如,1 3 7列。那么参数写为Columns:=Array(1,3,7)

案例介绍:

1.  仅根据第1列重复项删除整行

源表:黄色标记的都是重复项

VBA语句:

Option Explicit
Option Compare Text
Sub 去重()Dim sSheet As WorksheetSet sSheet = ActiveSheetsSheet.Range("A1:H25").RemoveDuplicates Columns:=1, Header:=xlYes
End Sub

或:个人推荐下面这种写法

Option Explicit
Option Compare Text
Sub 去重()Dim sSheet As WorksheetSet sSheet = ActiveSheetsSheet.Range("A1:A25").EntireRow.RemoveDuplicates Columns:=1, Header:=xlYes
End Sub

运行后:

去重复项时忽略大小写,示例

源表:

VBA语句:

Option Explicit
Option Compare Text
Sub 去重()Dim sSheet As WorksheetSet sSheet = ActiveSheetsSheet.Range("A1:H25").RemoveDuplicates Columns:=1, Header:=xlYes
End Sub

运行后:

RemoveDuplicates 方法去重规则总结:

a.去重时忽略大小写

b.前或后带空格的项却不做为重复项,无法去重,见上面案例。----- 关于这一点,经验验证:WPS 2019 --- 数据 --- 删除重复项 也是无法去除的,因此RemoveDuplicates 方法和工具菜单的方式去重是一样的效果。

2. 仅根据第2列重复项删除整行

源表:

VBA语句:

Option Explicit
Option Compare Text
Sub 去重()Dim sSheet As WorksheetSet sSheet = ActiveSheetsSheet.Range("A1:H25").RemoveDuplicates Columns:=2, Header:=xlYes
End Sub

或:sSheet.Range("A1:H25").RemoveDuplicates Columns:=Array(2), Header:=xlYes

运行后:

3.  仅根据第 1 和 2列 重复项删除整行,能否生效?

源表:

VBA语句:

Option Explicit
Option Compare Text
Sub 去重()Dim sSheet As WorksheetSet sSheet = ActiveSheetsSheet.Range("A1:H25").RemoveDuplicates Columns:=Array(1, 2), Header:=xlYes
End Sub

运行后:

发现没有效果,重复项没有去除掉!!

再示例: 要过滤的多列重复项 都处在同一行

源表:

VBA语句:

Option Explicit
Option Compare Text
Sub 去重()Dim sSheet As WorksheetSet sSheet = ActiveSheetsSheet.Range("A1:H25").RemoveDuplicates Columns:=Array(1, 3), Header:=xlYes
End Sub

运行后:

第1列的重复项和第3列的重复项 处于同行,才会去做移除操作,见上图!

另:

http://www.amarindaz.com/excel-vba-remove-duplicates/    Excel VBA Remove Duplicates Method

Header- It determines whether the given range does contain header or not. User can specify three values in header parameter. They are shown below

Header:=xlYes- Choose this value if given range does contain Header

Header:=xlNo – Choose this value if given Range doesn’t contain header

Header:=xlGuess- Choose this value if you want excel to determine the existence of Header

示例1:Header:=xlYes

源表:

VBA语句:

Option Explicit
Option Compare Text
Sub 去重()Dim sSheet As WorksheetSet sSheet = ActiveSheetsSheet.Range("A1:H25").RemoveDuplicates Columns:=1, Header:=xlYes
End Sub

运行后:

第1列 与标题行重复项 没有去除掉,其它行重复项已去除。

示例2:Header:=xlNo

源表:

VBA 语句:

Option Explicit
Option Compare Text
Sub 去重()Dim sSheet As WorksheetSet sSheet = ActiveSheetsSheet.Range("A1:H25").RemoveDuplicates Columns:=1, Header:=xlNo
End Sub

运行后:

发现与标题行重复项已去除!

示例3:Header:=xlGuess

源表:

VBA语句:

Option Explicit
Option Compare Text
Sub 去重()Dim sSheet As WorksheetSet sSheet = ActiveSheetsSheet.Range("A1:H25").RemoveDuplicates Columns:=1, Header:=xlGuess
End Sub

运行后:

转载于:https://www.cnblogs.com/onelikeone/p/10204443.html

VBA RemoveDuplicates方法去重复项相关推荐

  1. python去重复记录_Python列表去重复项的N种方法(实例代码)

    说明 Python语言中列表(List)与其他语言的数组(Array)类似,是一种有序的集合数据结构,Python List可支持各种数据类型,长度也可动态调整,与JS中的数组或Java ArrayL ...

  2. execl筛选去重_Excel中表格筛选去重复项的操作方法

    一听去重复项,大家可能都熟悉,因为现在的office版本比较高起码都是2007的吧,去重复项一键就能完成.但是小编现在要做的不是去除而是筛选,这又如何操作呢?今天,学习啦小编就教大家在Excel中表格 ...

  3. php 处理二维数组(去除重复项,排序,转换,去空白等)

    技巧提示: array_keys($array) //返回所有键名array_values($array) //返回所有键值 $result=array_reverse($input); //将数组颠 ...

  4. php二维码数组处理_php处理二维数组(去除重复项,排序,转换,去空白等)

    1. PHP二维数组去重复项函数 PHP数组去除重复项 有个内置函数array_unique (),但是php的 array_unique函数只适用于一维数组,对多维数组并不适用,以下提供一个二维数组 ...

  5. python列表删除重复项_五分钟学会三种Excel重复项删除方法,工作效率大杀器!...

    点击蓝字 关注我们 在统计数据过程中, 同一份数据可能由于渠道的不同而进行了多次统计, 在输入数据时, 可能因为操作失误重复输入数据.种种原因造成数据表中的数据存在重复现象, 删除重复数据是数据清洗的 ...

  6. 用JavaScript实现列数据的标出重复项和去重(解决科学计数法的excel数据去重异常问题)

    是这样,通常情况下标出重复项和去重复项这种比较简单的工作交给excel就可以了,但是excel有时候会出现无法处理的情况,比如说一串数字太长,会自动用科学计数法来表示,这个时候如果标出重复项就会出现乱 ...

  7. python去重复排序_Python实现删除排序数组中重复项的两种方法示例

    本文实例讲述了Python实现删除排序数组中重复项的两种方法.分享给大家供大家参考,具体如下: 对于给定的有序数组nums,移除数组中存在的重复数字,确保每个数字只出现一次并返回新数组的长度 注意:不 ...

  8. python去重复的数据_python - 常用数据清洗方法-重复项处理

    在数据的处理过程中,一般都需要进行数据清洗工作,如数据集是否存在重复,是否存在缺失,数据是否具有完整性和一致性,数据中是否存在异常值等.发现诸如此类的问题都需要针对性地处理,下面我们一起学习常用的数据 ...

  9. excel去重函数的使用方法_Excel的去除重复项你真的明白原理吗?浅尝去除重复项的函数奥秘...

    Excel函数学习:悟空百问の009:去除重复项的深入思考 我们经常整理一些数据,数据不可以动原数据,又需要进行数据分析处理,整理,数据汇总,如何快速的找到这些重复的值,这成了我们很头疼的东西,今天就 ...

最新文章

  1. 剑指offer:面试题17. 打印从1到最大的n位数
  2. 地图收敛心得170405
  3. 广东省普通高中计算机会考,广东会考网
  4. Linux内核学习笔记十一——I/O层和I/O调度机制
  5. Google工程师带你学算法
  6. 西安电子科技大学计算机接口与通用技术答案,西安电子科技大学--西电《计算机接口与通信技术》平时作业...
  7. FFmpeg转码指令(测试通过)
  8. Deep Belief Networks
  9. 【渝粤教育】电大中专就业指导 (3)作业 题库
  10. sikuli 搜索例子
  11. python中可以使用变量来引用函数吗_如何在python语言中使用函数变量并调用函数...
  12. asp.net mvc中加入log4net记录错误日志
  13. vue富文本编辑器 Vue-Quill-Editor
  14. gbk、gb2312、big5、unicode、utf-8
  15. 20 分钟教你量化自己的资产
  16. matlab临界比例度发确定pi,PID控制器参数整定的MATLAB/Simulink仿真
  17. 第一次发博客想问这积分只能充钱送吗,一次就要冲100多?
  18. Qt显示调用dll库失败
  19. sql2000 sp3、sql2000 sp4升级补丁下载和安装须知
  20. Numpy删除指定行

热门文章

  1. 针对深度学习框架版本的讨论
  2. json.parse详解
  3. OSChina 周六乱弹 ——震惊!程序媛上班穿花裙子同事这么说……
  4. Spring控制反转和依赖注入
  5. Flowable显示流程图坐标和审批人
  6. 动图保存gif方法以及遇到MovieWriter ffmpeg unavailable; using Pillow instead.
  7. python 输出plot函数的动图,并保存为gif文件
  8. php记录xml到txt,提取xml文档的内容到.txt文件中
  9. yii2 find用法
  10. Java学习总结-持续更新