删除工作表时自动化错误

根据向用户显示的表单,我正在做一个小小的删除特定工作表的工作。 用户select他希望保留在列表框中的表格。 代码然后遍历列表框中的所有图纸,并删除未选中的图纸。 但是,当运行窗体并单击button我得到一个自动化错误:

执行错误“-2147417848(80010108):调用的自动化错误对象已断开连接

Private Sub Button_Export_Click() Application.DisplayAlerts = False For i = 0 To PSV_Case_List.listCount - 1 If Not PSV_Case_List.Selected(i) Then Worksheets(PSV_Case_List.List(i)).Delete End If Next i Application.DisplayAlerts = True End Sub 

在此消息之后,Excel冻结,我必须杀死这个进程。

任何想法 ?

谢谢 !

当你这样删除时,你应该总是从最高索引处开始工作,因为一旦表(0)被删除,表(1)变成表(0)等等。 所以试试这个:

 For i = PSV_Case_List.listCount - 1 to 0 step -1