小编Sam*_*iko的帖子

使用字符串的VBA Excel宏删除表

我使用了一些VBA代码来搜索工作簿中的某个字符串的所有工作表名称,我们称之为"文本".当它找到带有该字符串的工作表时,它应该删除该工作表.但是让我们说名称中有四个带有"文本"的表格(名为文本1,文本2,文本3文本4),而不是删除所有四个,它删除文本1文本3.它将第2和第4个保留为未删除.然后,如果我再次调用宏,它将删除文本2,但保留文本4.最后,如果我再次单击它会删除文本4.我无法解决为什么它看起来应该工作.

    Dim i As Integer, n As Integer
    n = ThisWorkbook.Worksheets.Count
    i = 1
    Application.DisplayAlerts = False
    Application.ScreenUpdating = False
    Do
        On Error Resume Next
        If InStr(1, Sheets(i).Name, "Text") Then Sheets(i).Delete
        On Error GoTo 0
        i = i + 1
    Loop Until i = n
    Application.DisplayAlerts = True

    Application.ScreenUpdating = True
Run Code Online (Sandbox Code Playgroud)

excel vba excel-vba

5
推荐指数
1
解决办法
1万
查看次数

标签 统计

excel ×1

excel-vba ×1

vba ×1