循环浏览工作簿并删除VeryHidden工作表

较大项目中的一个模块是创build多余的非常隐藏的工作表。 我正在尝试遍历工作簿中的每个工作表,并删除标记为非常隐藏的工作表。 我已经在其他项目中使用几乎相同的代码,它已经工作,所以我不确定为什么它不在这种情况下工作。 这是我试过的:

Dim sheet As Worksheet For Each sheet In ActiveWorkbook.Worksheets If sheet.Visible = xlSheetVeryHidden Then sheet.Delete End If Next sheet 

我也尝试使用相同的代码:

 For Each sheet In ActiveWorkbook 

我也试过:

 Dim i As Integer Dim sheetCount As Integer For i = 1 To sheetCount If Worksheets(i).Visible = xlVeryHidden Then Worksheets(i).Delete End If Next i 

并且:

 For i = sheetCount To 3 Step -1 If Worksheets(i).Visible = xlVeryHidden Then Worksheets(i).Delete End If Next i 

在运行之前,所有尝试将Application.DisplayAlerts更改为False ,运行后更改为True 。 导致运行时错误1004。

如果您在删除表单之前取消隐藏,则应该可以正常工作。

 Dim sheet As Worksheet For Each sheet In ActiveWorkbook.Worksheets If sheet.Visible = xlSheetVeryHidden Then sheet.visible = xlSheetVisible sheet.Delete End If Next sheet