#vba #ms-word #ms-office
#vba #ms-word #ms-office
Вопрос:
Из-за перехода с Office 2000 на Office 2010 имена моих шаблонов Word изменились (с *.dot на *.dotm). Теперь я хочу обновить объявление вложенных шаблонов, указанных в существующих документах. Я написал небольшую процедуру для сопоставления «старых» и «новых» имен шаблонов, но столкнулся с проблемами при получении старого имени шаблона. При открытии документов с Documents.open()
помощью указанного вложенного шаблона не удалось найти, поэтому по умолчанию применяется Normal.dotm, и мое сопоставление не работает. Я не нашел способа отключить автоматическое разрешение вложенных шаблонов. Странное поведение: после открытия документа исходное имя шаблона можно увидеть в свойствах documents, но ?ActiveDocument.AttachedTemplate
оно является «Normal.dotm»
Ответ №1:
Попробуйте это:
MsgBox Dialogs(wdDialogDocumentStatistics).Template
Комментарии:
1.
Dialogs(wdDialogDocumentStatistics).Template
имеет путь к шаблону, который когда-то был создан документ. С этой информацией мое сопоставление теперь работает. Спасибо. Кстати: Word ищет шаблон документов 1. местоположение создания 2. папку, в которой сохраняется документ 3. указанные папки для шаблонов пользователей / рабочих групп