VBA中如何遍历worksheet并删除特定sheet
1、如果通过for i = 1 to worksheets.count 的方式来遍历sheet,然后通过worksheets(i).delete这种方式来找到并删除sheet,运行时可能会报错超出范围。
这是因为通过sheet的编号来遍历,又在循环体中使用编号引用到sheet来删除,容易造成i超出删除后的count。

2、正确方法是通过For Each ws In Worksheets的方式来遍历,然后通过ws.Delete的方式来删除。

3、示例:
Sub test()
Application.DisplayAlerts = False
For Each ws In Worksheets
If CDate(ws.Name) < Date - 30 Then
ws.Delete
End If
Next
Application.DisplayAlerts = True
End Sub
声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
阅读量:109
阅读量:82
阅读量:151
阅读量:95
阅读量:68