Word的标准邮件合并功能使您可以直接合并到打印机,新文档或一系列电子邮件中。

但是,有时可能需要为每个数据源记录创建一个单独的文档。不幸的是,Word没有提供执行此操作的方法。幸运的是,您可以创建一个宏来为您处理任务。下面是一个宏,它将“拆分”由邮件合并功能创建的文档。文档的每一部分(每个数据源记录都有一个部分)被拉出并保存在自己的文档文件中。

Sub Splitter()

Dim numlets As Integer     Dim Counter As Integer     Dim BaseName As String     Dim DocName As String

Selection.EndKey Unit:=wdStory     numlets = Selection.Information(wdActiveEndSectionNumber)

If numlets > 1 Then numlets = numlets - 1     Selection.HomeKey Unit:=wdStory     BaseName = "c:\Let"

For Counter = 1 To numlets         DocName = BaseName & Right("000" & LTrim(Str(Counter)), 3)

ActiveDocument.Sections.First.Range.Cut         Documents.Add         Selection.Paste         Selection.MoveLeft Unit:=wdCharacter, Count:=1         Selection.Delete Unit:=wdCharacter, Count:=1         ActiveDocument.SaveAs FileName:=DocName         ActiveWindow.Close     Next Counter End Sub

运行宏时,它将创建一系列名为Ltr001到Ltrxxx的文件,其中xxx是原始文档中的节数。

实际上,宏创建的一个“ Ltr”文件少于文档中节的数量。文档的最后一部分保留在原始文件中(您正在处理的部分)。如果要更改文件名或文件保存位置,请在宏中更改BaseName变量的设置。

注意:

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

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

(Microsoft Word是世界上最流行的文字处理软件。)本技巧(11593)适用于Microsoft Word 2007、2010、2013、2016、2019和Office 365中的Word。 Word的旧菜单界面在这里: