【问题标题】:How to open a Save As dialog in MS Word showing SharePoint Online Locations by using VBA or AppleScript?如何使用 VBA 或 AppleScript 在 MS Word 中打开显示 SharePoint Online 位置的“另存为”对话框?
【发布时间】:2021-03-30 02:34:40
【问题描述】:

我在 SharePoint Online 上有一个内容类型包含 VBA 的 Word 模板。当基于此内容类型创建新文档时,Word 桌面启动并且 VBA 打开一个对话框。用户可以在对话框中输入一些值,然后单击自定义保存按钮。保存按钮会在 Word 中打开一个“另存为”对话框,其中包含源自用户输入的文件名。新文档需要保存在创建它的 SharePoint 在线库中。

在 MacOS 上的 Word 2016 中,您可以使用 VBA 或 AppleScript 打开“另存为”对话框。我试过以下代码:

VBA

With Application.Dialogs(wdDialogFileSaveAs)
    .Name = " testdoc.docx"
    .Show
End With

AppleScript

tell application "Microsoft Word"
    activate
    set tmpDialog to get dialog dialog file save as
    display Word dialog tmpDialog
end tell

但此代码会打开一个仅显示本地存储选项的对话框。请参阅下面的打印屏幕。

我需要的是以下由代码打开的对话框。

这是您在 Word 中手动单击“另存为”时的对话框。

如何使用 VBA 或 AppleScript 打开这个 Word 对话框?

【问题讨论】:

    标签: vba macos ms-word applescript sharepoint-online


    【解决方案1】:

    要访问您作为目标显示的对话框,当前必须使用 Word SaveAs 对话框中的“在线位置”按钮访问它。也就是说,如果在 Word > Preferences > Save ... 中标记了默认情况下打开 AutoSave 的属性。

    但是,我在您共享的对话框的剪辑上看不到“在线位置”按钮。所以...转到 Word > 首选项 > 保存并清除默认自动保存设置上的复选框,然后关闭、重新启动并再次尝试 Word。该过程将强制 Word 保存您的新保存设置。

    我不知道这种行为是设计使然还是错误,但我已将其报告给 Microsoft,至少令人困惑。

    【讨论】:

    • 我已经测试了您描述的选项。使用 VBA 打开“另存为”对话框时,在线位置仍然不出现。
    • 在我的情况下,我找到了一个不使用“另存为”对话框的解决方法。从 SharePoint 库中的内容类型创建新文档时,新 Word 文档将引用该 SharePoint 库中的模板。我在 VBA 代码中使用该引用将文档直接保存在该库中,而不显示“另存为”对话框。
    猜你喜欢
    • 1970-01-01
    • 2013-11-12
    • 2012-07-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-09-05
    • 1970-01-01
    相关资源
    最近更新 更多