如何在Excel中用VBA的for each循环批量删工作表

 时间:2026-02-14 08:20:29

1、如图所示,要删除Excel文件中的多张工作表,但是其中有一张不能删。

如何在Excel中用VBA的for each循环批量删工作表

2、打开Visual Basic,添加模块和过程,称之为“批量删表”。

如何在Excel中用VBA的for each循环批量删工作表

3、添加for each循环的代码。

如何在Excel中用VBA的for each循环批量删工作表

4、1)Dim sht As Worksheet:变量为sht,意思是“工作表”,所以定义为Worksheet;

2)For Each sht In Sheets:每个sht(工作表)在所有工作表中Sheets;

3)Next:结束for each循环。

5、添加if判断语句,当遇到工作表名为“模板(不删)”时,不删跳过,而删除其余表。

如何在Excel中用VBA的for each循环批量删工作表

6、1)If sht.Name <> "模板(不删)" Then:表名不等于(符号为“<>”)“模板(不删)”;

2)sht.Delete:删除表;

3)End If:结束if语句。

7、在执行以上代码后,发现删表时会有一个确认对话框。

如何在Excel中用VBA的for each循环批量删工作表

8、为了在批量操作时,不用每次都去点击确认,在代码中加入代码如图。

如何在Excel中用VBA的for each循环批量删工作表

9、再次执行更新的代码后,可以快速删表,并且只留下我们不要删除的那张工作表。

如何在Excel中用VBA的for each循环批量删工作表

  • 怎样使用VBA窗体中使用滚动文字?
  • 怎样使用VBA设置文本框的密码样式?
  • 进销存系统开发教程
  • 怎么用VBA判断打开了几个文档
  • 如何用Excel记忆最近鼠标访问过的单元格
  • 热门搜索
    馒头的做法 溜肉段的家常做法 西洋菜的做法 信用卡怎么注销 油焖尖椒的做法 羊肉煲的做法大全 面包的做法大全 鸡翅做法 豌豆苗的做法 烩面片的做法