【问题标题】:MS Word SaveAs, check "Maintain Compatibility" via VBAMS Word SaveAs,通过 VBA 检查“保持兼容性”
【发布时间】:2015-11-21 03:33:46
【问题描述】:

在“另存为”对话框中有一个复选框“保持与以前版本的Word的兼容性”,通过录制宏并勾选复选框,我得到了

ActiveDocument.SaveAs2 FileName:= _
   "C:\Users\jondoe\123.dotm", _
    FileFormat:=wdFormatXMLTemplateMacroEnabled, LockComments:=False, _
    Password:="", AddToRecentFiles:=True, WritePassword:="", _
    ReadOnlyRecommended:=False, EmbedTrueTypeFonts:=False, _
    SaveNativePictureFormat:=False, SaveFormsData:=False, SaveAsAOCELetter:= _
    False, CompatibilityMode:=12

打勾,唯一的区别是

CompatibilityMode:=15

根据WdCompatibilityMode Enumeration,12代表Word2007,15代表Word2013。

但是当我在 VBA 中运行确切的代码时,将其放入

Public Sub App_DocumentBeforeSave(ByVal Doc As Document, SaveAsUI As Boolean, Cancel As Boolean)

在显示另存为对话框的单词之前调用子,但是无论我将兼容性设置为12还是15,都没有选中该复选框。是否可以通过VBA进行检查?如果不是,我不得不撤回我的理论“一切都可以手动完成,可以通过编程完成”。

有什么想法吗?

而且,当您手动执行另存为时,该复选框的状态似乎来自上次另存为操作,

【问题讨论】:

    标签: vba ms-word office-2013


    【解决方案1】:

    这个MSDN page 讨论了相关的SetCompatibilityMode 命令,看起来就像你想要的。

    ActiveDocument.SetCompatibilityMode (wdWord2003)

    它与保存无关,这似乎对您更有效。

    【讨论】:

    • 谢谢道格。我试过了,没有按预期工作。似乎SetCompatibilityMode 处理 word 如何打开/查看文档,我想保存具有兼容性的文档。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-05-09
    • 2020-01-21
    • 1970-01-01
    • 2014-03-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多