Дэн хочет открыть текстовый файл (с расширением txt) в Word из командной строки, используя определенный шаблон. Единственная проблема в том, что у него проблемы с этим. Дэн может собрать правильную командную строку, согласно справочной системе Word, но это все равно не работает.

На самом деле, это имеет смысл, что это не работает. Представьте на мгновение, что шаблоны используются с документами Word, а не с текстовыми файлами. Текстовые файлы — это всего лишь текст. Даже в Word они остаются текстом. Да, вы можете прикрепить шаблон к текстовому файлу, открытому в Word, но на этом этапе «вложение» не будет полным, если вы все еще не сохраните документ в формате Word. Итак, когда вы используете командную строку, такую ​​как следующая, она не будет работать:

"c:\Program Files\Microsoft Office\Office\Winword.exe" "d:\text.txt" /t"MyTemplate.dotm"

Это переключатель / t, который должен указывать Word, какой шаблон использовать с файлом, который он открывает. Причина в том, что Word игнорирует любую спецификацию шаблона, потому что знает, что файлы шаблонов не идут с текстовыми файлами. Вместо этого Word открывает файл с шаблоном Normal. Word также игнорирует переключатель шаблона, даже если вы используете / z вместо / t. (Ключ / z такой же, как / t, за исключением того, что он открывает Word немного иначе, чем с / t.)

Тот факт, что шаблон Normal используется для текстовых файлов, дает один способ обойти очевидный недостаток Word в этой области.

Вы можете, например, переименовать существующий шаблон Normal как что-нибудь другое (например, OldNormal.dotm), а затем переименовать шаблон, который хотите использовать, как Normal.dotm. Когда вы открываете текстовый файл из командной строки, желаемый набор стилей будет в новом файле Normal.dotm и прикреплен к текстовому файлу.

Другой вариант, который, возможно, лучше, — использовать макрос для прикрепления желаемого шаблона к вашему текстовому файлу. Да, вы можете создать макрос, который вы запускаете вручную после загрузки текстового файла, но лучший способ — это настроить так, чтобы это происходило автоматически. Например, в шаблоне Normal.dot может быть такой макрос:

Sub TextTemplate()

With ActiveDocument         .UpdateStylesOnOpen = False         .AttachedTemplate = "d:\test files\MyTemplate.dotm"

.XMLSchemaReferences.AutomaticValidation = True         .XMLSchemaReferences.AllowSaveAsXMLWithoutValidation = False     End With End Sub

Хотя вы можете запустить этот макрос вручную, чтобы прикрепить шаблон MyTemplate.dot к вашему документу, вы также можете использовать следующее из командной строки:

"c:\Program Files\Microsoft Office\Office\Winword.exe" "d:\text.txt" /m"TextTempate"

В этом случае открывается текстовый файл и запускается макрос TextTemplate.

Это работает, потому что Normal.dotm (где хранится макрос TextTemplate)

прикрепляется к текстовому файлу, а затем макрос автоматически присоединяет другой шаблон.

_Примечание: _

Если вы хотите знать, как использовать макросы, описанные на этой странице (или на любой другой странице на сайтах WordTips), я подготовил специальную страницу, содержащую полезную информацию.

link: / wordribbon-WordTipsMacros [Щелкните здесь, чтобы открыть эту специальную страницу в новой вкладке браузера].

WordTips — ваш источник экономичного обучения работе с Microsoft Word.

(Microsoft Word — самая популярная программа для обработки текстов в мире.) Этот совет (11187) применим к Microsoft Word 2007, 2010, 2013 и 2016. Вы можете найти версию этого совета для старого интерфейса меню Word здесь:

link: / word-Opening_a_Text_File_and_Template_from_the_Command_Line [Открытие текстового файла и шаблона из командной строки].