簡體   English   中英

在Excel中“想要保存更改”對話框后無法捕獲

[英]Cannot trap after “Want to save your changes” dialog in Excel

  1. 在Word VSTO中,我們有DocumentBeforeSave事件,該事件在“想要保存更改”對話框后立即調用,我可以輕松取消標准的“保存”對話框並顯示我自己的對話框。

  2. 但是在Excel VSTO WorkbookBeforeSave在Save對話框關閉后調用它會導致我自己的保存對話框在內置的后顯示。 我可以使用WorkbookBeforeClose事件,但我應該顯示自己的“想要保存更改”對話框,並且在按下“不保存”時自動保存功能也不起作用。

有沒有辦法在Excel中“想要保存您的更改”對話框后立即調用我的代碼,能夠阻止內置的“保存”對話框或以某種方式告訴Excel創建自動保存點(使用我自己的“想要保存您的更改”對話框)當我按“不保存”?

我不確定你是否找到了你的答案,因為這個帖子有點過時,但我想我的價格是0.02美元。

我在解鎖的非常隱藏的工作表和每個可見的工作表上創建一個[isDirty]命名范圍。更改我設置[isDirty] = True

在Workbook.BeforeClose我有這個:

      If [IsDirty] = True Then
            Select Case MsgBox("Do you want to save the changes you made to '" & .Name & "'?", _
                vbYesNoCancel + vbExclamation)
                Case Is = vbYes
                    ThisWorkbook.Save
                    [IsDirty] = False
                Case Is = vbNo
                     'Do not save
                Case Is = vbCancel
                    Cancel = True
            End Select
     End If

在Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean,Cancel As Boolean)

    ThisWorkbook.Save
    [IsDirty] = False
    Cancel=True

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM