excel学习库

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

Excel VBA系列之for each循环批量删工作表

如何通过Excel VBA批量删除工作表? 1. 如图所示,要删除Excel文件中的多张工作表,但是其中有一张不能删。2. 打开Visual Basic,添加模块和过程,称之为“批量删表”。3. 添加for each循环的代码。1)Dim sht As Worksheet:变量为sht,意思是“工作表”,所以定义为Worksheet; 2)For Each sht In Sheets:每个sht(工作表)在所有工作表中Sheets; 3)Next:结束for each循环。 4. 添加if判断语句,当遇到工作表名为“模板(不删)”时,不删跳过,而删除其余表。代码: Sub 批量删表() Dim sht As Worksheet For Each sht In Sheets If sht.Name <> "模板(不删)" Then sht.Delete End If Next End Sub 1)If sht.Name <> "模板(不删)" Then:表名不等于(符号为“<>”)“模板(不删)”; 2)sht.Delete:删除表; 3)End If:结束if语句。 5. 在执行以上代码后,发现删表时会有一个确认对话框。6. 为了在批量操作时,不用每次都去点击确认,在代码中加入控制警告弹窗的代码。代码: Sub 批量删表() Dim sht As Worksheet Application.DisplayAlerts = False For Each sht In Sheets If sht.Name <> "模板(不删)" Then sht.Delete End If Next Application.DisplayAlerts = True End Sub 7. 再次执行更新的代码后,可以快速删表,并且只留下我们不要删除的那张工作表。

发表评论:

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

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