Word vba SaveAsUI заставляет пользователя сохранять в формате макросов с поддержкой макросов - PullRequest
0 голосов
/ 13 июня 2019

У меня есть шаблон слова с поддержкой макросов (.dotm) для развертывания на компьютерах под управлением Word 2013, 2016, 365 или 2019. Мне нужно, чтобы пользователи сохранили файл как макрос с поддержкой (.docm), чтобы запустить _beforeSave код (вставить метку времени)

Однако я не могу заставить собственный SaveAsUI показывать только .docm!

В Excel я использую FileFilter Application.GetSaveAsFilename(FileFilter:="Excel Macro-Enabled Workbook (*.xlsm), *.xlsm", но в Word это не работает

Мне известны решения, предложенные как Принудительное сохранение Word VBA как .docm , но это не помогает. Он по-прежнему открывает собственный интерфейс SaveAs и предлагает в качестве первого выбора .docx За кулисами SaveAsUI

Нет ли опции принудительно использовать фильтр файлов в Word SaveAs? что-то вроде:

Private Sub appWord_DocumentBeforeSave(ByVal Doc As Document, SaveAsUI As Boolean, Cancel As Boolean)

If Doc Is ActiveDocument Then
    If SaveAsUI Then
        Some FileFormat Filter here!!

Или проблема связана с наличием шаблона Word вместо обычного файла? При открытии нового документа на основе шаблона модуль Class, имеющий appWord_DocumentBeforeSave похоже, не инициализируется, потому что декларирующий код находится в обычном модуле или ThisDocument в шаблоне и не переносится в новый документ?

Там действительно должен быть способ заставить пользователей сохранять документы в .docm, если шаблон также поддерживает макросы. В противном случае, какой смысл иметь шаблоны с макросами, учитывая, что обычные пользователи просто сохраняют документ, независимо от его формата (и в данном случае: документ по умолчанию)!

Спасибо за любую помощь или указатели

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...