【发布时间】:2016-10-26 19:16:32
【问题描述】:
我有一个脚本,它从 CSV 文件中获取数据,然后生成图形。在多次 Office 更新后,此脚本已完成工作。 Office 版本无法返回。
这是代码:
Dim sheet
For Each sheet In ActiveWorkbook.Sheets
Select Case sheet.Name
Case "Archive": Sheets(sheet.Name).Delete
Case "Trend": Sheets(sheet.Name).Delete
Case "PivotTable": Sheets(sheet.Name).Delete
End Select
Next
我收到以下错误:“应用程序定义或对象定义错误”。此错误出现在 Select Case 上,因为我的对象“工作表”没有方法“名称”。
我尝试将“工作表”声明为工作表
Dim sheet as Worksheet
For Each sheet In ActiveWorkbook.Sheets
Select Case sheet.Name
Case "Archive": Sheets(sheet.Name).Delete
Case "Trend": Sheets(sheet.Name).Delete
Case "PivotTable": Sheets(sheet.Name).Delete
End Select
Next
在脚本的第一个 cicle 我没有任何问题,从第二个 cicle 我有错误:“类型不匹配”
我该如何解决?
谢谢
【问题讨论】:
-
ActiveWorkbook.WorkSheets和 `worksheets(sheet.name)' 有效吗? -
您是否尝试在调试模式下运行代码,在
For each...之后设置断点并检查sheet的值?您现在使用的是哪个版本的 Office?