亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 開發設計 > 正文

C#簡單實現動態數據生成Word文檔并保存

2019-11-14 13:38:53
字體:
來源:轉載
供稿:網友

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

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

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

網上的方法大多數都是從一個GridView或表中獲得數據后向Word中添加一個表格。

目標效果

(圖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事件中加入以下代碼。

 

 1 using System; 2 using System.Collections.Generic; 3 using System.ComponentModel; 4 using System.Data; 5 using System.Drawing; 6 using System.Linq; 7 using System.Text; 8 using System.Windows.Forms; 9 using Microsoft.Office.Interop.Word;10 11 namespace 生成word文檔12 {13     public partial class Form1 : Form14     {15         public Form1()16         {17             InitializeComponent();18             Load += Form1_Load;19         }20 21         void Form1_Load(object sender, EventArgs e)22         {23             //**********************************************24             //來自博客http://blog.csdn.net/fujie72425             //**********************************************26             object oMissing = System.Reflection.Missing.Value;27             //創建一個Word應用程序實例28             Microsoft.Office.Interop.Word._application oWord = new Microsoft.Office.Interop.Word.Application();29             //設置為不可見30             oWord.Visible = false;31             //模板文件地址,這里假設在X盤根目錄32             object oTemplate = "d://template.dotx";33             //以模板為基礎生成文檔34             Microsoft.Office.Interop.Word._Document oDoc = oWord.Documents.Add(ref oTemplate, ref oMissing, ref oMissing, ref oMissing);35             //聲明書簽數組36             object[] oBookMark = new object[5];37             //賦值書簽名38             oBookMark[0] = "beizhu";39             oBookMark[1] = "name";40             oBookMark[2] = "sex";41             oBookMark[3] = "birthday";42             oBookMark[4] = "hometown";43             //賦值任意數據到書簽的位置44             oDoc.Bookmarks.get_Item(ref oBookMark[0]).Range.Text = "使用模板實現Word生成";45             oDoc.Bookmarks.get_Item(ref oBookMark[1]).Range.Text = "李四";46             oDoc.Bookmarks.get_Item(ref oBookMark[2]).Range.Text = "";47             oDoc.Bookmarks.get_Item(ref oBookMark[3]).Range.Text = "1987.06.07";48             oDoc.Bookmarks.get_Item(ref oBookMark[4]).Range.Text = "賀州";49             //彈出保存文件對話框,保存生成的Word50             SaveFileDialog sfd = new SaveFileDialog();51             sfd.Filter = "Word Document(*.doc)|*.doc";52             sfd.DefaultExt = "Word Document(*.doc)|*.doc";53             if (sfd.ShowDialog() == DialogResult.OK)54             {55                 object filename = sfd.FileName;56 57                 oDoc.SaveAs(ref filename, ref oMissing, ref oMissing, ref oMissing,58                 ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing,59                 ref oMissing, ref oMissing, ref oMissing, ref oMissing, ref oMissing,60                 ref oMissing, ref oMissing);61                 oDoc.Close(ref oMissing, ref oMissing, ref oMissing);62                 //關閉word63                 oWord.Quit(ref oMissing, ref oMissing, ref oMissing);64             }65         }66     }67 }

 

8、運行后直接彈出保存文件對話框(因為寫在了Load事件里)。保存為Doc文檔,打開發現效果如下(圖5)

最后效果

(圖5)

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

 

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

 

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

 


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
成人精品视频在线| 日韩av一区二区在线观看| 成人久久18免费网站图片| 国产精品色婷婷视频| 亚洲高清免费观看高清完整版| 日韩极品精品视频免费观看| 久久精品亚洲94久久精品| 色小说视频一区| 91夜夜未满十八勿入爽爽影院| 国产一区红桃视频| 欧美在线欧美在线| 亚洲国产美女久久久久| 久久综合伊人77777尤物| 亚洲欧美国内爽妇网| 亚洲免费一在线| 97热精品视频官网| 精品久久久久久国产91| 日韩在线高清视频| 97色在线视频| 欧美极品少妇xxxxx| 久久久久久这里只有精品| 亚洲老头老太hd| 久久精品小视频| 欧美性色19p| 久久久久免费视频| 亚洲成人网av| 欧美日韩国产一中文字不卡| 亚洲欧美另类人妖| 久久久久久69| 欧美性猛交xxxxx免费看| 欧美视频一区二区三区…| 日韩激情片免费| 97av在线视频| 欧美在线免费看| 亚洲美女视频网| 久久色免费在线视频| 奇米4444一区二区三区| 亚洲精品国产精品乱码不99按摩| 成人a级免费视频| 在线成人激情视频| 久久精品久久久久久| 国产亚洲一区精品| 国产丝袜精品第一页| 国产精品美女久久久久久免费| 亚洲肉体裸体xxxx137| 日韩精品极品在线观看播放免费视频| 久青草国产97香蕉在线视频| 国产精品第2页| www日韩中文字幕在线看| 久久精品视频99| 国产狼人综合免费视频| 久久国产精品久久久| 亚洲欧美一区二区激情| 国产欧美一区二区三区久久人妖| 欧美人与性动交| 亚洲男人天堂2023| 91精品国产免费久久久久久| 97欧美精品一区二区三区| 最近2019中文免费高清视频观看www99| 丰满岳妇乱一区二区三区| 91美女高潮出水| 亚洲美女在线看| 色琪琪综合男人的天堂aⅴ视频| 国产女人精品视频| 琪琪亚洲精品午夜在线| 91免费欧美精品| 欧美一级视频在线观看| 成人性生交大片免费看小说| 91精品国产综合久久久久久久久| 精品露脸国产偷人在视频| 国产一区二区三区欧美| 中文字幕久精品免费视频| 草民午夜欧美限制a级福利片| 亚洲国产精品系列| 欧美一级片一区| 亚洲少妇中文在线| 国产69精品久久久久9999| 精品久久久久久国产| 国产亚洲欧美一区| 欧美黄色片免费观看| 91极品女神在线| 亚洲美女视频网站| 欧美激情视频一区二区| 91免费人成网站在线观看18| 伊人久久久久久久久久| 亚洲欧美色婷婷| 日韩在线视频中文字幕| 97国产在线视频| 在线不卡国产精品| 国产性猛交xxxx免费看久久| 狠狠干狠狠久久| 欧美性xxxxhd| 成人av资源在线播放| 亚洲自拍偷拍福利| 91青草视频久久| 国产成人精品免费久久久久| 欧美成人精品h版在线观看| 久热精品视频在线免费观看| 亚洲福利在线观看| 国产精品扒开腿爽爽爽视频| 亚洲人成欧美中文字幕| 久久天天躁日日躁| 欧美大片va欧美在线播放| 亚洲欧洲av一区二区| 成人美女av在线直播| 青草热久免费精品视频| 91亚洲精品在线观看| 亚洲女同性videos| 久久人人爽人人爽人人片亚洲| 色伦专区97中文字幕| 精品成人乱色一区二区| 国产精品欧美日韩一区二区| 91色在线视频| 亚洲片av在线| 亚洲天堂av图片| 国产精品成人va在线观看| 91tv亚洲精品香蕉国产一区7ujn| 欧美激情视频播放| 国产精品国产自产拍高清av水多| 久久久久久噜噜噜久久久精品| 国产精品日本精品| 亚洲欧美另类中文字幕| 久久天天躁夜夜躁狠狠躁2022| 国产精品一区二区久久国产| 国产精品美乳一区二区免费| 久久久精品2019中文字幕神马| 国产91免费看片| 色爱精品视频一区| 欧美日韩国产在线看| 色婷婷综合久久久久| 91国产视频在线| 久久国产精品免费视频| 蜜臀久久99精品久久久无需会员| 日韩精品亚洲视频| 日韩人在线观看| 亚洲人在线观看| 久久成人综合视频| 国产欧美va欧美va香蕉在线| 一区二区三区在线播放欧美| 欧美激情手机在线视频| 国产欧美一区二区三区在线| 国产主播欧美精品| 亚洲国产精品va在线| 日韩人体视频一二区| 日韩久久午夜影院| 欧美在线视频网站| 亚洲aⅴ男人的天堂在线观看| 久热99视频在线观看| 亚洲午夜av久久乱码| 欧美寡妇偷汉性猛交| 日本一区二区不卡| 欧美视频在线观看免费网址| 精品久久久久久久中文字幕| 久久成人18免费网站| 成人免费高清完整版在线观看| 中文字幕亚洲欧美日韩2019| 成人免费高清完整版在线观看| 欧美高清在线播放| 久久影院模特热| 日韩电视剧在线观看免费网站| 成人午夜两性视频| 亚洲欧美中文字幕| 欧美午夜精品久久久久久久| 91久久久久久久久久久久久|