| |
C#的office操作[word&Excel] |
出处:c#社区收集整理 |
|
| [ 2005-07-27 10:07:46
] |
作者:inzaghizxm
|
责任编辑:moningfeng |
调用上面静态方法,打开目标文件并且把DataGrid中数据填充到对应Word标签中去
///#region Word填充数据(For Example) /// /// Word填充数据 /// private void WordLoadData() { Word.Document wDoc=null; Word.Application wApp=null; sysFun.CreateWordDocument("E:\\监测报告(new).dot",ref wDoc,ref wApp);
//对标签"C"进行填充 object bkmC="C"; if(wApp.ActiveDocument.Bookmarks.Exists("C") == true) { wApp.ActiveDocument.Bookmarks.get_Item (ref bkmC).Select(); } wApp.Selection.TypeText(this.txt1.Text); object bkmG = "TWaterTable3"; object unit; object count; //移动数 object extend;
extend = Word.WdMovementType.wdExtend; unit = Word.WdUnits.wdCell; //把DataGrid中数据填充到标签TWaterTable3上 if(wApp.ActiveDocument.Bookmarks.Exists("TWaterTable3") == true) { wApp.ActiveDocument.Bookmarks.get_Item (ref bkmG).Select();
for(int i=0;i { if(i==0) { count=1; } else { count=0; } //需填充5列数据 wApp.Selection.Move(ref unit,ref count); wApp.Selection.TypeText(gridEX1.GetRow(i).Cells[0].Text); count=1;
wApp.Selection.Move(ref unit,ref count); wApp.Selection.TypeText(gridEX1.GetRow(i).Cells[1].Text);
wApp.Selection.Move(ref unit,ref count); wApp.Selection.TypeText(gridEX1.GetRow(i).Cells[2].Text);
wApp.Selection.Move(ref unit,ref count); wApp.Selection.TypeText(gridEX1.GetRow(i).Cells[3].Text);
wApp.Selection.Move(ref unit,ref count); wApp.Selection.TypeText(gridEX1.GetRow(i).Cells[4].Text); //换行 wApp.Selection.MoveRight(ref unit,ref count,ref extend); } } } #endregion 然后就OK了,在对标签表控制要注意列循环和换行.
|