欧美三区_成人在线免费观看视频_欧美极品少妇xxxxⅹ免费视频_a级毛片免费播放_鲁一鲁中文字幕久久_亚洲一级特黄

C#在Word文檔指定位置處理表格

系統(tǒng) 2192 0
?

??? 正在做的項目里,需要開發(fā)一個小工具,將需要的數(shù)據(jù)插入到Word文檔中。這當中有一項需求,要求能夠在Word文檔中某處插入表格,或者刪除該處表格。

????這個小工具是在VS.Net2005、Office2007下開發(fā)的。

????1、在Word文檔中插入一個書簽,書簽名稱為“tl”;

??? 2、在VS2005新建一個C#項目,然后在引用中添加Word類庫;由于我使用的是Office2007,因此選擇的是"Microsoft Word 12.0?Object Library",如果你使用的是Office2003,就應該選擇11.0;

??? 3、在代碼頂部添加對Word類庫的引用;

using ?Word? = ?Microsoft.Office.Interop.Word;

??? 4、打開Word文檔

object ?missingValue? = ?System.Reflection.Missing.Value;
????????????
object ?myTrue? = ? false ;?????????????????? // 不顯示W(wǎng)ord窗口
???????????? object ?fileName? = ? @" F:\Doc1.doc " ;
????????????Word._Application?oWord?
= ? new ?Word.ApplicationClass();
????????????Word._Document?oDoc;
????????????oDoc?
= ?oWord.Documents.Open( ref ?fileName,? ref ?missingValue,
???????????????
ref ?myTrue,? ref ?missingValue,? ref ?missingValue,? ref ?missingValue,
???????????????
ref ?missingValue,? ref ?missingValue,? ref ?missingValue,
???????????????
ref ?missingValue,? ref ?missingValue,? ref ?missingValue,
???????????????
ref ?missingValue,? ref ?missingValue,? ref ?missingValue,
???????????????
ref ?missingValue);

??? 5、找到剛才添加的書簽

object ?tmp? = ? " t1 " ;
????????????????Word.Range?startRange?
= ?oWord.ActiveDocument.Bookmarks.get_Item( ref ?tmp).Range;

??? 6、刪除在該位置的表格

Word.Table?tbl? = ?startRange.Tables[ 1 ];
tbl.Delete();

??? 如果書簽所在的位置并沒有插入表格,程序并不會刪除該位置下面的表格,而是會拋出異常,報錯。

??? 7、插入表格,并劃線

// 添加表格
oDoc.Tables.Add(startRange,? 5 ,? 4 ,? ref ?missingValue,? ref ?missingValue);

// 為表格劃線
startRange.Tables[ 1 ].Borders[WdBorderType.wdBorderTop].LineStyle? = ?WdLineStyle.wdLineStyleSingle;
startRange.Tables[
1 ].Borders[WdBorderType.wdBorderLeft].LineStyle? = ?WdLineStyle.wdLineStyleSingle;
startRange.Tables[
1 ].Borders[WdBorderType.wdBorderRight].LineStyle? = ?WdLineStyle.wdLineStyleSingle;
startRange.Tables[
1 ].Borders[WdBorderType.wdBorderBottom].LineStyle? = ?WdLineStyle.wdLineStyleSingle;
startRange.Tables[
1 ].Borders[WdBorderType.wdBorderHorizontal].LineStyle? = ?WdLineStyle.wdLineStyleSingle;
startRange.Tables[
1 ].Borders[WdBorderType.wdBorderVertical].LineStyle? = ?WdLineStyle.wdLineStyleSingle;

??? 全部的代碼如下:

object ?missingValue? = ?System.Reflection.Missing.Value;
????????????
object ?myTrue? = ? false ;?????????????????? // 不顯示W(wǎng)ord窗口
???????????? object ?fileName? = ? @" F:\Doc1.doc " ;
????????????Word._Application?oWord?
= ? new ?Word.ApplicationClass();
????????????Word._Document?oDoc;
????????????oDoc?
= ?oWord.Documents.Open( ref ?fileName,? ref ?missingValue,
???????????????
ref ?myTrue,? ref ?missingValue,? ref ?missingValue,? ref ?missingValue,
???????????????
ref ?missingValue,? ref ?missingValue,? ref ?missingValue,
???????????????
ref ?missingValue,? ref ?missingValue,? ref ?missingValue,
???????????????
ref ?missingValue,? ref ?missingValue,? ref ?missingValue,
???????????????
ref ?missingValue);
????????????
try
????????????
{
????????????????
object ?tmp? = ? " t1 " ;
????????????????Word.Range?startRange?
= ?oWord.ActiveDocument.Bookmarks.get_Item( ref ?tmp).Range;

????????????????
// 刪除指定書簽位置后的第一個表格
????????????????Word.Table?tbl? = ?startRange.Tables[ 1 ];
????????????????tbl.Delete();

????????????????
// 添加表格
????????????????oDoc.Tables.Add(startRange,? 5 ,? 4 ,? ref ?missingValue,? ref ?missingValue);

????????????????
// 為表格劃線
????????????????startRange.Tables[ 1 ].Borders[WdBorderType.wdBorderTop].LineStyle? = ?WdLineStyle.wdLineStyleSingle;
????????????????startRange.Tables[
1 ].Borders[WdBorderType.wdBorderLeft].LineStyle? = ?WdLineStyle.wdLineStyleSingle;
????????????????startRange.Tables[
1 ].Borders[WdBorderType.wdBorderRight].LineStyle? = ?WdLineStyle.wdLineStyleSingle;
????????????????startRange.Tables[
1 ].Borders[WdBorderType.wdBorderBottom].LineStyle? = ?WdLineStyle.wdLineStyleSingle;
????????????????startRange.Tables[
1 ].Borders[WdBorderType.wdBorderHorizontal].LineStyle? = ?WdLineStyle.wdLineStyleSingle;
????????????????startRange.Tables[
1 ].Borders[WdBorderType.wdBorderVertical].LineStyle? = ?WdLineStyle.wdLineStyleSingle;

????????????}

????????????
catch
????????????
{
????????????????
// 異常處理
????????????}


????????????
object ?bSaveChange? = ? true ;
????????????oDoc.Close(
ref ?bSaveChange,? ref ?missingValue,? ref ?missingValue);
????????????oDoc?
= ? null ;
????????????oWord?
= ? null ;

??? 代碼很簡單,在寫這實例的過程中我參考了如下資料:
???? Word對象模型概述

??? Word任務

C#在Word文檔指定位置處理表格


更多文章、技術(shù)交流、商務合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯(lián)系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦?。。?/p>

發(fā)表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 亚洲免费一级视频 | 欧美一区二区免费 | 亚洲综合视频在线观看 | 久久精品久久久久久 | 九九热在线免费观看 | 国产精品久久久久久久一区探花 | 六月婷婷综合 | 清纯唯美综合网 | 亚洲最大福利视频 | 比比资源先锋影音网 | 逼逼网| 亚洲精品一区二区三区在线观看 | 波多野结衣在线高清视频 | 看免费一级毛片 | 欧美片网站免费 | 国产精品亚洲精品日韩已方 | 91在线成人 | av在线大全| 久久精品成人 | 九色视频网址 | 国产视频中文字幕 | 六月综合激情 | 久草视频福利在线观看 | 国产成人久久婷婷精品流白浆 | 我把寡妇日出水好爽视频 | 无码乱人伦一区二区亚洲 | 99久久99热这里只有精品 | 亚洲欧美自拍另类图片色 | 亚洲高清在线看 | 欧美日韩黄 | 亚洲a级在线观看 | 成年人xxxx| 91久久久久久久久 | 伊人无码高清 | 久草在线中文888 | 成人黄色网址 | 欧美操片在线观看 | 成人欧美日韩视频一区 | 99久久99热久久精品免费看 | 欧洲免费在线视频 | 人人夜|