快速合并文本到Word – 利用VBA代码
为了提高录入的效率,同事分别安排下属录入不同的文本,并以数字序号进行命名,最后再在Word中将这些文本文档合并起来。常规的方法是切换到“插入”选项卡,在“文本”功能组选择“对象→文件中的文字”,如图1所示,按照提示插入相关的文本,操作起来比较麻烦一些。其实,我们也可以利用VBA代码实现快速合并文本的任务:
打开Word文档,按下“Alt+F11”组合键,打开Microsoft Visual Basic for Applications编辑器窗口,依次选择“插入→模块”,在右侧窗格插入一个空白模块,如图所示,手工输入或粘贴如下代码:
Sub hebin() Dim fs1, f1 Set fs1 = CreateObject("Scripting.FileSystemObject") For i = 1 To 4 file1 = "h:\Download\文本合并\" & i & ".txt" Set f1 = fs1.OpenTextFile(file1, 1, 0) Selection.TypeText f1.Readall Selection.TypeParagraph f1.Close Next i Set f1 = Nothing Set fs1 = Nothing End Sub
上述代码中的代码名“hebin”可以任意命名,“h:\Download\文本合并\”表示文本文档所在的路径名称,“For i = 1 To 4”表示待合并文本的数量,代码检查没有错误之后,依次选择“文件→关闭并返回到Microsoft Word”命令,返回Word主界面,按下“Alt+F8”组合键,打开“宏”对话框,选择并运行宏,很快就可以完成合并文本的任务。
补充:如果文本文档的数量发生变化,只需要修改“ For i = 1 To 4”即可,但必须保证这些文本文档的文件名都是数字的形式。