在Excel中如何利用VBA实现(符合条件)指定(空)行列的批量删除

您所在的位置:网站首页 苹果怎么看通知中心 在Excel中如何利用VBA实现(符合条件)指定(空)行列的批量删除

在Excel中如何利用VBA实现(符合条件)指定(空)行列的批量删除

2024-01-17 04:27| 来源: 网络整理| 查看: 265

要使用VBA,首先打开你的Excel电子表格,然后将Microsoft Visual Basic窗口打开,这样才能使用VBA代码!

  方法是:在Excel中直接按下组合键Alt F11即可打开VB窗口,倘若VB默认没有打开代码窗口,请执行操作:“视图”→“代码窗口”即可!

  好了,环境都设置好了,下面来学习如题所示的操作吧!

  代码1#8212;删除第8个单元格为空的行,范围从1行到88行:---------------------------------------------------------- Sub DeleteEmptyRow '删除指定的单元格为空的行  Dim i As Integer  For i = 88 To 1 Step -1   If Cells(i, 8) = "" Then    Sheets("sheet1").Rows(i).Delete   End If  Next i End Sub----------------------------------------------------------  代码解释:

  For i = 88 To 1 Step -1 '循环语句,从第88行一直检查到第1行  If Cells(i, 8) = "" Then '如果当前行的第8列的值为空值,那么就删除该行!i是变量,随着循环而变,其值从88逐渐减小到1

  代码2#8212;删除第6个单元格为空的列,范围从1列到66列:---------------------------------------------------------- Sub DeleteEmptyColmn() '删除指定的单元格为空的列  Dim i As Integer  For i = 66 To 1 Step -1   If Cells(i, 6) = "" Then    Sheets("sheet1").Columns(i).Delete   End If  Next i End Sub----------------------------------------------------------  代码解释:与上面的代码类似,不再解释!

  知识扩展:

  以上两种代码仅删除sheet1工作表满足条件的空行空列,如果要一次性删除多个工作表的满足条件的空行和空列呢?

  同样道理,只要再代码外面再使用一个循环即可!

----------------------------------------------------------

 Sub DeleteEmptyRowAndColmn() '删除指定的单元格为空的行  Dim i As Integer  For j = 1 To 3   For i = 88 To 1 Step -1    If Cells(i, 6) = "" Then     Sheets(j).Columns(i).Delete    End If   Next i  Next j End Sub

相关文章参考:

VBA语言基础 各种Excel VBA的命令 VB6 中将数据导出到 Excel 提速之法 VBA语法200句 各种Excel VBA的命令 Execl编程详解   其 它VB相关:

 VB软件操作EXCEL教程:※VB全面控制Excel



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3