手动删除工作表时禁用提醒

时间:2018-04-30 16:31:41

标签: excel vba excel-vba

VBA中是否有办法禁用手动删除工作表时弹出的警报(右键单击并删除)?我看过Application.DisplayAlerts = False,但这似乎只适用于我使用VBA(Sheets("Sheet1").delete)删除工作表。当您手动右键单击工作表并单击“删除”时,我试图禁用整个工作簿的警报。感谢。

1 个答案:

答案 0 :(得分:0)

如果其他人正在寻找same scenario

  

...无需在出示时确认删除表格   会议中的工作簿。我经常翻阅床单   点击数据透视表查看详细信息,我想消除   删除生成的工作表时的弹出警报...

如果仅在双击数据透视表时生成新工作表,则这可能是一个合适的解决方案

放置在ThisWorkbook中,下面的代码会在选择不同的工作表时删除任何新工作表

Option Explicit

'Place this code in ThisWorkbook module

'Expects that all new sheets are generated by double-clicking a pivot table

Private pivotWs As Worksheet

Private Sub Workbook_NewSheet(ByVal Sh As Object)
    Set pivotWs = Sh
End Sub

Private Sub Workbook_SheetDeactivate(ByVal Sh As Object)
    If Not pivotWs Is Nothing Then
        If Sh.Name = pivotWs.Name Then
            Application.DisplayAlerts = False
            pivotWs.Delete
            Set pivotWs = Nothing
            Application.DisplayAlerts = True
        End If
    End If
End Sub