在 VBA for Word 中获取保存的文件名

Posted

技术标签:

【中文标题】在 VBA for Word 中获取保存的文件名【英文标题】:Get the saved file name in VBA for Word 【发布时间】:2019-04-01 13:59:28 【问题描述】:

我需要你的帮助来解锁我。

我想检索用户在 VBA 中使用 Word 保存的文件的名称。我正在使用BeforeSave 方法,但我似乎无法捕捉到用户选择的名称。

提前感谢您的帮助!

【问题讨论】:

保存文件的新名称不会存储在任何地方。您也可以创建自己的保存对话框并存储该子的名称。 与this question相关但不是骗子 请向我们展示您的代码。否则,这个问题“没有表现出努力”,并且提供的任何代码都将更加“在上下文中”,因此更容易理解。您可以使用问题下方的edit 链接添加更多信息。 【参考方案1】:

由于另存为窗格没有触发SaveAs() 子,我认为唯一可靠的方法是由DocumentBeforeSave 触发的OnTime 事件。

类似:

Private Sub App_DocumentBeforeSave(ByVal Doc As Document, SaveAsUI As Boolean, Cancel As Boolean)
    If SaveAsUI = True Then
        Word.Application.OnTime Now + TimeValue("00:00:01"), "AfterSave"
    Else
        DoStuff()
    End if
End Sub
Sub AfterSave()
    CheckSaveOccured()
    DoStuff()
End Sub

请参阅this post 了解更详细的说明。

【讨论】:

以上是关于在 VBA for Word 中获取保存的文件名的主要内容,如果未能解决你的问题,请参考以下文章