前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >探讨使用RemoveDuplicates方法删除空行

探讨使用RemoveDuplicates方法删除空行

作者头像
fanjy
发布2024-01-14 21:06:01
1570
发布2024-01-14 21:06:01
举报
文章被收录于专栏:完美Excel完美Excel

标签:VBA

这是一个案例:想要删除数据集中每列(列A到列J)都为空的行,也就是数据集中完全没有数据的行,如何使用VBA代码实现?

我们可以基于这样一种假设,即多行多列中的空格实际上是重复的,可以将它们看成是重复值,这样使用RemoveDuplicates方法,是否可以快速删除空行。下面我们试一试。

使用代码:

代码语言:javascript
复制
Sub DelBlankRows()
 Columns("A:J").RemoveDuplicates Columns:=Array(1, 2, 3, 4, 5, 6, 7, 8, 9, 10), Header:=xlYes
End Sub

或者代码:

代码语言:javascript
复制
Sub removeDups()
 Dim x As Integer
 Application.DisplayAlerts = 0
 For x = 1 To 10
   Columns(x).RemoveDuplicates Columns:=1, Header:=xlYes
 Next x
End Sub

确实可以快速删除空行,但是还是会保留一个空行。也就是说,上面的代码只是部分起到了作用,还需要我们手工删除还剩下的一个空行。并且,如果数据集中有相同的数据行,除第1行相同的数据外,其余行会被删除。因此,使用RemoveDuplicates来删除空行不保险。

可以使用下面的代码:

代码语言:javascript
复制
Sub AllColumns()
  Columns("A:J").SpecialCells(xlCellTypeBlanks).Delete Shift:=xlUp
End Sub

或者:

代码语言:javascript
复制
Sub EachColumnBlank()
 Dim x As Integer
 For x = 1 To 10
   Columns(x).SpecialCells(xlCellTypeBlanks).Delete Shift:=xlUp
 Next x
End Sub

有兴趣的朋友可以试试看。

本文参与?腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2024-01-11,如有侵权请联系?cloudcommunity@tencent.com 删除

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

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

本文参与?腾讯云自媒体分享计划? ,欢迎热爱写作的你一起参与!

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