Stuart谈到了他需要将许多不同的文本文件合并到一个Word文档中的需求。使用插入|文件选项非常繁琐,尤其是当要合并20或30个不同的文本文件时。

幸运的是,对于Stuart来说,他的文件名是可以预测的:C1000.TXT,C1001.TXT等。这使将宏放到一起进行合并变得相当容易。下面的示例将在C:\目录中查找文件C1000.TXT至C1030.TXT,并将它们组合到当前文档中:

Sub CombineFiles()

Dim J As Integer     Dim sFile As String     For J = 1000 To 1030         sFile = "c:\c" & Trim(Str(J)) & ".txt"

If (Dir(sFile) > "") Then             Selection.InsertFile FileName:=sFile, ConfirmConversions:=False             Selection.TypeParagraph         End If     Next End Sub

如果要更改插入文件的范围,只需更改For …​ Next循环开始处的值。如果文件位于其他目录中,则可以更改下一个设置sFile的代码行中使用的路径。如果缺少该范围内的文件,则会自动跳过该文件。

有一种更简单的组合文件的方法,但是,甚至不涉及Word的使用。您可以在DOS命令行上使用以下命令:

copy C1???.txt single.txt

这会将多达1000个文件(从C1000.TXT到C1999.TXT)组合到一个名为SINGLE.TXT的文本文件中。原始文件保持不变。

如果要合并较少数量的文件,则可以使用以下格式:

copy C1020.txt+C1021.txt+C1022.txt+C1023.txt single.txt

这种用法导致C1020.TXT到C1023.TXT这四个文件被合并到SINGLE.TXT中。您可以根据需要以这种方式将任意多个文件添加在一起。

但是,此技术有一个警告。复制命令不会在文件中添加任何额外的字符。换句话说,C1021.TXT的内容立即放置在C1020.TXT之后。例如,如果C1020.TXT包含“文本1020”,而C1021.TXT包含“文本1021”,则SINGLE.TXT将包含“文本1020text 1021”。解决此问题的唯一方法是编辑每个源文件以确保它以回车结尾,或者使用先前显示的宏。

注意:

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

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

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