Excel批量删除指定关键字Sheet名称的工作表,助力办公效率提升

Excel情报局
Excel职场联盟
生产搬运分享Excel基础技能
Excel爱好者大本营
用1%的Excel基础搞定99%的职场问题
做一个超级实用的Excel公众号
Excel是门手艺玩转需要勇气
数万Excel爱好者聚集地

01

删除所有工作表 

Excel情报局

我们都知道,将Excel工作簿中的所有工作表删除,是非常简单的:我们可以选中开头的第一个工作表,然后按住Shift键,再点击最后一个工作表,然后右击鼠标点击删除即可,这里需要注意的是:一个工作簿中必须至少含有一个工作表,所以我们要留着一个。

02

删除指定关键字的工作表 

Excel情报局

我们今天要着重讲解的是:Excel批量删除含有指定关键字名称的工作表。如下图所示,一个工作簿内包含了多张工作表,需要批量删除工作表名称中含有关键字“公众号”的所有工作表。

03

步骤讲解 

Excel情报局

首先提取所有工作表名称到A列一列中显示。右击工作表,点击查看代码,将下面一段代码复制粘贴到VBA代码窗口。

代码如下:

Sub GetShtByVba() Dim sht As Worksheet, k As Long Application.ScreenUpdating = False k = 1 Range("a:b").Clear Range("a:a").NumberFormat = "@" For Each sht In Worksheets k = k + 1 Cells(k, 1) = sht.Name Next Range("a1:b1") = Array("名称", "删除") Application.ScreenUpdating = TrueEnd Sub

结果如下图所示:

我们将A列含有指定关键字“公众号”的工作表名称,筛选出来,在B列标记“删除”2字。
最后我们再次复制粘贴VBA代码,运行就可以批量删除了。
代码如下:
Sub DelShtByVba() Dim sht As Worksheet, i As Long, r Application.ScreenUpdating = False Application.DisplayAlerts = False On Error Resume Next r = Range("a1").CurrentRegion For i = 2 To UBound(r) If r(i, 2) = "删除" Then Worksheets(CStr(r(i, 1))).Delete Next Application.ScreenUpdating = True Application.DisplayAlerts = TrueEnd Sub
结果如下图所示:

阅读完文章之后,希望小伙伴们在文章底部帮小编点亮[在看]并分享转发到[朋友圈],坚持持续分享的路上需要有你们的鼓励与支持!

(0)

相关推荐