excel学习库

excel表格_excel函数公式大全_execl从入门到精通

EXCEL中,如何利用VBA代码快速删除重复数据行

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

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

«    2024年12月    »
1
2345678
9101112131415
16171819202122
23242526272829
3031
控制面板
您好,欢迎到访网站!
  查看权限
网站分类
搜索
最新留言
    文章归档
      友情链接