1. 程式人生 > >C#:簡單實現動態資料生成Word文件並儲存

C#:簡單實現動態資料生成Word文件並儲存

今天正好有人問我,怎麼生成一個報表式的Word文件。

就是文字的樣式和位置相對固定不變,只是裡面的內容從資料中讀取。

我覺得類似這種的一般用第三方報表來做比較簡便。但既然要求了Word,只好硬著頭皮來。

網上的方法大多數都是從一個GridView或表中獲得資料後向Word中新增一個表格。

但不方便實現下面的效果(圖1)。(以下插圖可能需要CSDN使用者登入後才能看到)

目標效果

(圖1)

我們使用Word模板來實現,方法如下:

1、首先需要向工程中的“引用”加入Word類庫的引用(圖2)。我是Office 2003。其他版本可能略有不同。在COM裡面。

WORD DLL

(圖2

2、用Word設計一個模板文件(字尾名*.dot)。(圖3

)

設計模板

(圖3)

3、向模板中的需要顯示動態內容的地方新增書籤。具體方法是。游標落到欲插入內容的地方,選擇選單欄上的“插入”——〉“書籤”(圖4)

新增“備註”的書籤

(圖4)在“備註:”的後面新增一個書籤,名字叫"beizhu"。書籤名字不能以數字開頭。

4、完成全部書籤的新增,依次應該是:

位置 書籤名
備註右側 beizhu
姓名右側單元格 name
性別右側單元格 sex
生日右側單元格 birthday
籍貫右側單元格 hometown

5、儲存這個已完成的模板到任意路徑,例如 X:/template.dot

6、在工程的窗體的類中新增引用的名稱空間

 

7、為了省事,直接在窗體的Load事件中加入以下程式碼。

 

8、執行後直接彈出儲存檔案對話方塊(因為寫在了Load事件裡)。儲存為Doc文件,打開發現效果如下(圖5)

最後效果

(圖5)

至此,大功告成,文件中的內容正是我們所設定的。一個簡單而又快捷的固定格式Word文件輸出就完成了。

希望對需要的朋友有幫助。

以上完整教程為個人勞動成果,轉載請註明出處。謝謝。