WinForm利用Microsoft.Office.Interop.Word來合併多個Word檔

本文介绍了一种使用C#在WinForm环境下合并多个Word文档的方法。通过实例代码演示了如何将两个Word文档按行或按页进行合并,并保存为新的Word文件。

最近同事問到這個問題,小弟一樣去找解答,分享一下測試心得

首先準備好兩個測試的word檔(1.doc,2.doc)放在c槽裡,執行完程式就產生3.doc的合併檔了

WinForm(C#)
WordCombine.cs

01 usingSystem;
02 usingSystem.Collections.Generic;
03 usingSystem.ComponentModel;
04 usingSystem.Data;
05 usingSystem.Drawing;
06 usingSystem.Text;
07 usingSystem.Windows.Forms;
08 usingWord = Microsoft.Office.Interop.Word;//這個要先加入Microsoft.Office.Interop.Word參考
09 usingSystem.Reflection;//這個記得參考
10
11 namespaceWindowsApplication1
12{
13 publicpartialclassWordCombine : Form
14 {
15 publicWordCombine()
16 {
17 InitializeComponent();
18 }
19
20 privatevoidWordCombine_Load(objectsender, EventArgs e)
21 {
22 objectmissing = Missing.Value;
23 stringoFirstDoc =@"c:\1.doc";//word檔1
24 objectoSecondDoc =@"c:\2.doc";//word檔2
25 objectoOutputDoc =@"c:\3.doc";//合併檔
26
27 //object oPageBreak = Word.WdBreakType.wdLineBreak;//接下行合併(LineBreak)
28 objectoPageBreak = Word.WdBreakType.wdPageBreak;//接下頁合併(PageBreak)
29
30 Word.Application wordApp =newWord.Application();
31 Word.Document origDoc = wordApp.Documents.Open(refoSecondDoc,refmissing,refmissing,refmissing,refmissing,refmissing,refmissing,refmissing,refmissing,refmissing,refmissing,refmissing,refmissing,refmissing,refmissing,refmissing);
32 origDoc.Activate();
33 wordApp.Selection.InsertFile(oFirstDoc,refmissing,refmissing,refmissing,refmissing);
34 wordApp.Selection.InsertBreak(refoPageBreak);
35 wordApp.ActiveDocument.SaveAs(refoOutputDoc,refmissing,refmissing,refmissing,refmissing,refmissing,refmissing,refmissing,refmissing,refmissing,refmissing,refmissing,refmissing,refmissing,refmissing,refmissing);
36 wordApp.ActiveDocument.Close(refmissing,refmissing,refmissing);
37 wordApp.Quit(refmissing,refmissing,refmissing);//加這行可以 Kill WINWORD.EXE process
38 }
39 }
40}

執行結果:
原始word檔→1.doc,2.doc

   


合併word檔→接下行合併(LineBreak)


合併word檔→接下頁合併(PageBreak)

參考網址:
http://bytes.com/forum/thread236890.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值