Foxtable(狐表)用户栏目专家坐堂 → 如何利用代码删除excel工作表中的空行呢?


  共有5470人关注过本帖树形打印复制链接

主题:如何利用代码删除excel工作表中的空行呢?

帅哥哟,离线,有人找我吗?
cnsjroom
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:七尾狐 帖子:1571 积分:11238 威望:0 精华:0 注册:2021/1/17 17:06:00
如何利用代码删除excel工作表中的空行呢?  发帖心情 Post By:2022/9/22 16:50:00 [只看该作者]

如何利用代码删除excel工作表中的空行呢?

主要是在分页预览的时候是1页,取消分页预览后普通预览的时候,显示有很多空行。

怎么删除这种多行且列都为空的空行呢?


 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:107718 积分:547917 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2022/9/22 16:59:00 [只看该作者]

遍历所有行,判断某个列数据为空就删除这一行

 回到顶部
帅哥哟,离线,有人找我吗?
cnsjroom
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:七尾狐 帖子:1571 积分:11238 威望:0 精华:0 注册:2021/1/17 17:06:00
回复:(有点蓝)遍历所有行,判断某个列数据为空就删...  发帖心情 Post By:2022/9/22 17:29:00 [只看该作者]

假定我只想导入前三十行数据,大于三十的就删除,

 

帮助里面有:

利用Delete方法,同时结合EntireRow和EntireColumn属性,可删除整行和整列。如:

Dim App As New MSExcel.Application
Dim Wb As MSExcel.WorkBook = App.WorkBooks.Open("D:\Report.xls")
Dim Ws As MSExcel.WorkSheet = Wb.WorkSheets(1)
Dim Rg As MSExcel.Range = Ws.Range("A10")'以这个指定的单元格为基准
Rg.EntireColumn.Delete(MSExcel.XlDirection.xlToLeft)  '右面的单元格左移
App.Visible = True

 

这样写没有实现预期:

 

Dim App As New MSExcel.Application
Dim Wb As MSExcel.WorkBook = App.WorkBooks.Open("C:\MyFolder1\202208AJT15_一览表1-8月.xls")
Dim Ws As MSExcel.WorkSheet = Wb.WorkSheets(1)
Dim Rg As MSExcel.Range = Ws.Range("A30")'以这个指定的单元格为基准
Rg.EntireRow.Delete() 
App.Visible = True


 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:107718 积分:547917 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2022/9/22 17:40:00 [只看该作者]

Dim Rg As MSExcel.Range = Ws.Rows("30:65535")'选定多行
Rg.Delete(MSExcel.XlDirection.xlUp) '下面的单元格上移
App.Visible = True

 回到顶部