晚上好,我有一個非常簡單的Sub過程刪除活動工作表的插件。爲了便於使用,我通過加載項的Workbook_Open調用中的Application.OnKey將Sub綁定到了一個組合鍵。ActiveSheet.Delete不顯示提示(當它應該)
請參閱下面的代碼。儘管使用了Application.DisplayAlerts = True,但實際的代碼執行將刪除沒有提示的工作表。但是,由於這是一個關鍵綁定,我想強制提示以避免意外刪除。
發生了什麼事?
Public Sub DeleteActiveSheet()
Application.DisplayAlerts = True
If ActiveWorkbook.Sheets.Count = 1 Then
MsgBox "You cannot delete the only sheet in a workbook."
Exit Sub
End If
ActiveSheet.Delete
End Sub
編輯:我應該指出,單步調試代碼產生預期的行爲,並顯示在迄今所做的所有測試的提示。我很難過。
我會嘗試重新映射組合鍵,但是什麼設置可能會導致這種情況?我不熟悉任何能夠抑制Excel中的提示的事情,因爲很久以前我就會發現這些提示! – mikstravaganza
我重新映射到Ctrl-g以及Ctrl-',並且仍然具有相同的非提示行爲。 – mikstravaganza
我不相信有一個設置爲Excel禁用所有警報。它在默認情況下啓用,並在您的代碼完成時重新啓用。當只有一個表單時,您的消息框是否顯示? – Kudu2