VBA RemoveDuplicates方法去重复项
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方法去重复项相关推荐
- python去重复记录_Python列表去重复项的N种方法(实例代码)
说明 Python语言中列表(List)与其他语言的数组(Array)类似,是一种有序的集合数据结构,Python List可支持各种数据类型,长度也可动态调整,与JS中的数组或Java ArrayL ...
- execl筛选去重_Excel中表格筛选去重复项的操作方法
一听去重复项,大家可能都熟悉,因为现在的office版本比较高起码都是2007的吧,去重复项一键就能完成.但是小编现在要做的不是去除而是筛选,这又如何操作呢?今天,学习啦小编就教大家在Excel中表格 ...
- php 处理二维数组(去除重复项,排序,转换,去空白等)
技巧提示: array_keys($array) //返回所有键名array_values($array) //返回所有键值 $result=array_reverse($input); //将数组颠 ...
- php二维码数组处理_php处理二维数组(去除重复项,排序,转换,去空白等)
1. PHP二维数组去重复项函数 PHP数组去除重复项 有个内置函数array_unique (),但是php的 array_unique函数只适用于一维数组,对多维数组并不适用,以下提供一个二维数组 ...
- python列表删除重复项_五分钟学会三种Excel重复项删除方法,工作效率大杀器!...
点击蓝字 关注我们 在统计数据过程中, 同一份数据可能由于渠道的不同而进行了多次统计, 在输入数据时, 可能因为操作失误重复输入数据.种种原因造成数据表中的数据存在重复现象, 删除重复数据是数据清洗的 ...
- 用JavaScript实现列数据的标出重复项和去重(解决科学计数法的excel数据去重异常问题)
是这样,通常情况下标出重复项和去重复项这种比较简单的工作交给excel就可以了,但是excel有时候会出现无法处理的情况,比如说一串数字太长,会自动用科学计数法来表示,这个时候如果标出重复项就会出现乱 ...
- python去重复排序_Python实现删除排序数组中重复项的两种方法示例
本文实例讲述了Python实现删除排序数组中重复项的两种方法.分享给大家供大家参考,具体如下: 对于给定的有序数组nums,移除数组中存在的重复数字,确保每个数字只出现一次并返回新数组的长度 注意:不 ...
- python去重复的数据_python - 常用数据清洗方法-重复项处理
在数据的处理过程中,一般都需要进行数据清洗工作,如数据集是否存在重复,是否存在缺失,数据是否具有完整性和一致性,数据中是否存在异常值等.发现诸如此类的问题都需要针对性地处理,下面我们一起学习常用的数据 ...
- excel去重函数的使用方法_Excel的去除重复项你真的明白原理吗?浅尝去除重复项的函数奥秘...
Excel函数学习:悟空百问の009:去除重复项的深入思考 我们经常整理一些数据,数据不可以动原数据,又需要进行数据分析处理,整理,数据汇总,如何快速的找到这些重复的值,这成了我们很头疼的东西,今天就 ...
最新文章
- 剑指offer:面试题17. 打印从1到最大的n位数
- 地图收敛心得170405
- 广东省普通高中计算机会考,广东会考网
- Linux内核学习笔记十一——I/O层和I/O调度机制
- Google工程师带你学算法
- 西安电子科技大学计算机接口与通用技术答案,西安电子科技大学--西电《计算机接口与通信技术》平时作业...
- FFmpeg转码指令(测试通过)
- Deep Belief Networks
- 【渝粤教育】电大中专就业指导 (3)作业 题库
- sikuli 搜索例子
- python中可以使用变量来引用函数吗_如何在python语言中使用函数变量并调用函数...
- asp.net mvc中加入log4net记录错误日志
- vue富文本编辑器 Vue-Quill-Editor
- gbk、gb2312、big5、unicode、utf-8
- 20 分钟教你量化自己的资产
- matlab临界比例度发确定pi,PID控制器参数整定的MATLAB/Simulink仿真
- 第一次发博客想问这积分只能充钱送吗,一次就要冲100多?
- Qt显示调用dll库失败
- sql2000 sp3、sql2000 sp4升级补丁下载和安装须知
- Numpy删除指定行