gpt4 book ai didi

c# - 无法在 Excel 中的 "Want to save your changes"对话框后补漏白

转载 作者:太空狗 更新时间:2023-10-29 22:00:49 25 4
gpt4 key购买 nike

  1. 在 Word VSTO 中,我们有 DocumentBeforeSave 事件,它在“想要保存您的更改”对话框之后立即调用,我可以轻松取消标准保存对话框并显示我自己的对话框。

  2. 但在 Excel 中,VSTO WorkbookBeforeSave 在保存对话框关闭后被调用,它导致我自己的保存对话框在内置保存对话框之后显示。我可以使用 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

关于c# - 无法在 Excel 中的 "Want to save your changes"对话框后补漏白,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27057060/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com