当用户单击 Excel 中的图像(按钮)时,我试图删除工作表。但是,这会使 excel 崩溃并重新启动,忘记任何未保存的进度。
这是我的子:
Sub DeletePlan()
Application.Calculation = xlCalculationManual
Application.DisplayAlerts = False
Dim SheetNamesToCopy As String
SheetNamesToCopy = ActiveSheet.Name
' Check what addon sheets exists for the media, then add existing ones to string
If CheckSheet("periodeplan", True) = True Then
ThisWorkbook.SheetS(SheetNamesToCopy & " - periodeplan").Delete
End If
If CheckSheet("ukesplan", True) = True Then
ThisWorkbook.SheetS(SheetNamesToCopy & " - ukesplan").Delete
End If
If CheckSheet("Input", True) = True Then
ThisWorkbook.SheetS(SheetNamesToCopy & " - Input").Delete
End If
SheetS("Totalplan").Select
ThisWorkbook.SheetS(SheetNamesToCopy).Delete
Application.DisplayAlerts = True
Application.Calculation = xlCalculationAutomatic
End Sub
应用程序大部分时间都会崩溃。但并非总是如此......有什么想法可能是错的吗?(我已经测试并确认删除功能会导致崩溃,但它并不总是同一张)。
编辑:此功能不会删除工作簿中的最后一张工作表。还有20张。我也使用Application.Calculation = xlCalculationAutomatic
,因为有很多公式,并且我不希望 excel 在删除所有连接的工作表之前计算更改。
任何提示或答案表示赞赏:)