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

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

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

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

Normal.dot用于文本文件的事实为您提供了一种解决Word在此方面明显不足的方法。例如,您可以将现有的Normal.dot模板重命名为其他名称(例如OldNormal.dot),然后重命名要用作Normal.dot的模板。当您从命令行打开文本文件时,所需的样式集将在新的Normal.dot文件中并附加到文本文件。

另一个更好的选择是使用宏将所需的模板附加到文本文件。是的,您可以创建一个宏,在加载文本文件后手动运行该宏,但是更好的方法是进行设置以使其自动发生。例如,您的Normal.dot模板中可能包含这样的宏:

Sub TextTemplate()

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

.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.dot(存储TextTemplate的位置)附加到了文本文件,然后宏自动附加了另一个模板。

注意:

如果您想知道如何使用此页面(或_WordTips_网站上的任何其他页面)中描述的宏,我准备了一个包含有用信息的特殊页面。

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

(Microsoft Word是世界上最流行的文字处理软件。)本技巧(455)适用于Microsoft Word 97、2000、2002和2003。您可以为Word(Word 2007)的功能区界面找到此技巧的版本。和更高版本)在这里: