Dan希望使用特定模板从命令行通过Word打开文本文件(扩展名为txt)。唯一的问题是,他在执行此操作时遇到了一些问题。根据Word的“帮助”系统,Dan可以组合适当的命令行,但仍然无法正常工作。

实际上,这是行不通的。暂时考虑将模板用于Word文档,而不用于文本文件。文本文件就是这样:文本。即使在Word中,它们仍然是文本。是的,您可以将模板附加到在Word中打开的文本文件中,但是此时“附加”是不完整的,除非您仍将文档保存为Word格式。因此,当您使用以下命令行时,它将无法正常工作:

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

/ t开关应该告诉Word要使用哪个模板来打开它的文件。原因是Word忽略了任何模板规范,因为它知道模板文件不会与文本文件一起使用。而是,Word使用普通模板打开文件。即使您使用/ z而不是/ t,Word也会忽略模板开关。 (/ z开关与/ t相同,不同之处在于它以与/ t稍微不同的方式打开Word。)

将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_网站上的任何其他页面)上描述的宏,我准备了一个包含有用信息的特殊页面。

_WordTips_是您进行经济有效的Microsoft Word培训的来源。

(Microsoft Word是世界上最流行的文字处理软件。)此技巧(11187)适用于Microsoft Word 2007、2010、2013和2016。您可以在这里找到适用于Word较旧菜单界面的该技巧的版本: