Excel vba删除工作表的代码和实例

网友投稿 1831 2022-12-03

excel vba删除工作表的代码和实例

文章介绍excel中vba删除工作表的方法,并通过两个案例来具体理解vba代码。

上一篇文章我们介绍了使用excel的基础操作来删除工作表。本文给大家分享vba删除工作表的代码写法。

vba删除工作表案例一:删除一张表以外的所有工作表

如下图所示:这一个excel工作薄包含多张工作表,如何使用vba删除 “IT部落窝论坛”以外的工作表呢?右边截图就是使用VBA代码删除后的效果,整个工作薄就只剩下一张工作表:IT部落窝论坛。

下面是具体的vba删除工作表操作步骤:

第一,按下ALT+F11,打开VBE编辑器。

第二,单击菜单:插入——模块,插入一个模块,并复制下面的代码到代码输入区:

Sub vba删除工作表()Application.DisplayAlerts = FalseDim sht As ObjectFor Each sht In ThisWorkbook.WorksheetsIf sht.Name <> "

IT部落窝论坛" Thensht.DeleteEnd IfNextApplication.DisplayAlerts = TrueEnd Sub

第三,单击上面截图所示的工具栏上面那个绿色的“运行”命令,excel就会自动删除“

IT部落窝论坛”以外的所有工作表。

从两篇删除工作表方法的文章对比,我们可以清楚的看到,如果工作表很多的情况,使用VBA删除工作表,效率会更加高效。而且代码可以随时调用运行,减少手工操作。

vba删除工作表案例二:逐一提示删除工作表

Excel vba删除工作表的代码和实例

录制代码的方法参考上面介绍,下面这一段代码运行的结果是出现一个提示框,要求输入工作表名称,如果输入的工作表名正确,excel就删除对应的工作表,如果输入的工作表不正确,excel返回消息框提示:您要删除的工作表不存在。

Sub vba删除工作表()Dim ws As WorksheetDim str As Stringstr = Application.InputBox(prompt:="输入需要删除的工作表:", Title:="删除工作表", Default:="sheet1", Type:=2)On Error GoTo backSet ws = Worksheets(str)Application.DisplayAlerts = Falsews.DeleteApplication.DisplayAlerts = TrueExit Subback:MsgBox "您要删除的工作表不存在!"End Sub

上面这段vba删除工作表的方法,如果需要经常使用,我们可以保存为宏,在需要的时候按快捷键ALT+F8调用,只要输入工作表名称即可删除工作表。

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:Excel vba窗体最小化最大化无边框的设置代码
下一篇:Excel中vba宏代码合并单元格的方法
相关文章