[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[文本处理] 批处理怎样将多个word合并成一个word?

求一段代码,谢谢.

文件夹下有几百个word,怎样将它们合并成一个word?

可以统一格式,字体.

本帖最后由 ArdentMan 于 2011-7-2 14:01 编辑
  1. Dim FSO, SHELL, Path, File, Output
  2. Set SHELL = CreateObject("Wscript.Shell")
  3. Path = SHELL.CurrentDirectory
  4. Set SHELL = Nothing
  5. Set FSO = CreateObject("Scripting.FileSystemObject")
  6. If FSO.FileExists("Total.doc") Then FSO.DeleteFile "Total.doc"
  7. For Each File In FSO.GetFolder(Path).Files
  8.   If LCase(FSO.GetExtensionName(File)) = "doc" Then Read File.Name
  9. Next
  10. Dim WORD, DOC
  11. Set WORD = CreateObject("Word.Application")
  12. WORD.Visible = False
  13. Set DOC = WORD.Documents.Add()
  14. WORD.Selection.TypeText Output
  15. WORD.Selection.WholeStory
  16. WORD.Selection.Font.Name = "宋体"
  17. WORD.Selection.Font.Size = 12
  18. DOC.SaveAs(Path & "\Total.doc")
  19. DOC.Close
  20. WORD.Quit
  21. Set WORD = Nothing
  22. MsgBox "所有WORD合并完成!合成后的文件为Total.doc", , "ArdentMan友情提示"
  23. Sub Read(File)
  24. Dim WORD, DOC
  25. Set WORD = CreateObject("Word.Application")
  26. Set DOC = WORD.Documents.Open(Path & "\" & File)
  27. Output = Output & DOC.Range.Text & vbCrLf
  28. DOC.Close
  29. WORD.Quit
  30. Set WORD = Nothing
  31. End Sub
复制代码
1

评分人数

    • batman: 乐于助人PB + 2 技术 + 1
一路飘过的鸟~~~

TOP

Dim FSO, SHELL, Path, File, Output
Set SHELL = CreateObject("Wscript.Shell")
Path = SHELL.CurrentDirectory
Set SHELL = Nothing
Set FSO = CreateObject("Scripting.FileSystemObject")
If FSO.FileEx ...
ArdentMan 发表于 2011-7-2 13:49


谢谢.不过,我运行你的代码,没反应啊

TOP

报错了吗?

没报错就一直等到它运行完呗
一路飘过的鸟~~~

TOP

报错了吗?

没报错就一直等到它运行完呗
ArdentMan 发表于 2011-7-3 09:11

楼主不见得知道那是VBS

TOP

3# dan5262


代码保存为test.vbs,跟你的word文件放到同一个目录下面。

TOP

谢谢.  我开始保持成BAT了.

我保存为VBS,   可以用, 但遇到出错的文档就中断了.

TOP

可否将出错信息列出?
一路飘过的鸟~~~

TOP

可否将出错信息列出?
ArdentMan 发表于 2011-7-8 09:26


遇到加密文档,只读文档,就中断了.

TOP

返回列表