我想在用戶單擊Excel中的圖像(按鈕)時刪除工作表。但是,這使得excel崩潰並重新啓動,忘記了任何未保存的進度。使用VBA崩潰刪除工作表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在所有連接表被刪除之前計算更改。
任何暗示或答案理解:)
它在哪一行崩潰? – 2013-04-09 08:13:43
如果您暫時關閉該行,它是否會崩潰:'Application.DisplayAlerts = False' – 2013-04-09 08:17:57
@Olle它在刪除表單的行上崩潰,但不是每次都崩潰。但是最後一次刪除命令最常崩潰。 – 2013-04-09 08:31:44