4

У меня есть серия шаблонов Microsoft Office 2010 (Excel, PowerPoint и Word), распределенных по заранее определенной иерархии папок.

Мне нужно убедиться, что при создании нового документа из одного из этих шаблонов он по умолчанию сохраняет его в той же папке, что и шаблон, из которого он был создан.

Я смог выполнить задачу для Word, используя макрос, такой как

Sub AutoNew()
   ChangeFileOpenDirectory ActiveDocument.AttachedTemplate.Path
End Sub

но мне не удалось воспроизвести это поведение в Excel или PowerPoint.

1 ответ1

1

Шаблоны в Excel и Word сильно отличаются от того, что я вижу, поэтому я не уверен, что это возможно, как вы просите.

Однако возможный обходной путь заключается в создании обычного файла Excel (.xls/.xlsx) в различных папках, который по сути является одним и тем же «шаблоном» документа. Затем пометьте файл как только для чтения в операционной системе (щелчок правой кнопкой мыши, свойства, только для чтения).

Когда Excel открывает файл только для чтения, он не позволяет сохранить его поверх оригинала, поэтому при попытке сохранить его вам будет предложено ввести новое имя, и Excel по умолчанию выберет папку, из которой вы открыли документ.

Если вы хотите стать более модным, у вас может быть Workbook.Open

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .