各位好,今天开始讲VBA代码解决方案的二十九讲:在EXCEL中,如何借助于代码来快速完成删除重复行的工作,其实在实际的工作中这个工作是经常用到的,excel中有没有重复的数据,是EXCEL数据统计中非常重要的工作的工作之一,也是经常要处理的工作之一。如果掌握了这个技巧,无形中会提高自己的工作效率,而且还可以提高工作的准确性。
实例:在实际应用中,可能需要删除工作表中A列的重复内容而只保留一行,如何来解决这个问题呢?可以借助工作表CountIf函数来完成.我们先来讲解一下Countif函数.
Countif函数: 是Microsoft Excel中对指定区域中符合指定条件的单元格计数的一个函数,在WPS,Excel2003和Excel2007等版本中均可使用。
语法规则如下:countif(range,criteria) 参数:a) range 要计算其中非空单元格数目的区域,b) criteria 以数字、表达式或文本形式定义的条件
在讲解完这个函数后,我们来看代码:
代码解析:MyDeleteRow过程删除工作表A列重复单元格所在的整行内容,只保留一行。
a) 第5行代码取得工作表中A列的最后一个非空单元格的行号,要注意Range对象的End属性。不知读者是否已经掌握。
b) 第6行到第10行代码从最大行数至最小行数循环判断A列单元格内容是否重复并删除重复单元格所在的整行。此处For...Next循环也要从最大行数至最小行数开始循环判断,否则可能会删除不净。
c) 其中第7、8行代码使用工作表CountIf函数判断单元格内容是否重复,如果重复则删除该单元格所在的行。
运行MyDeleteRow过程工作表区域下截图:
代码截图:
运行后的截图:
运行的结果后,可以看到和预想的一样。
今日内容回向:
1 删除工作表中重复数据的思路是什么?
2 COUNTIF 的意义是什么?
3 上面代码中.Columns(1)的意义是什么?
分享成果,随喜正能量
联系客服