C动态生成Word文档并将数据填入Word表格中.docx
- 文档编号:1074619
- 上传时间:2023-04-30
- 格式:DOCX
- 页数:5
- 大小:15.60KB
C动态生成Word文档并将数据填入Word表格中.docx
《C动态生成Word文档并将数据填入Word表格中.docx》由会员分享,可在线阅读,更多相关《C动态生成Word文档并将数据填入Word表格中.docx(5页珍藏版)》请在冰点文库上搜索。
C动态生成Word文档并将数据填入Word表格中
C动态生成Word文档并将数据填入Word表格中
用C#动态生成Word文档并将数据填入Word表格中
要使用C#操作word,首先要添加引用:
1、添加引用->COM->MicrosoftWord11.0ObjectLibrary
2、在.cs文件中添加
usingWord;
下面的例子中包括C#对Word文档的创建、插入表格、设置样式等操作:
(例子中代码有些涉及数据信息部分被省略,重要是介绍一些C#操作word文档的方法)
publicstringCreateWordFile(stringCheckedInfo)
...{
stringmessage="";
try
...{
ObjectNothing=System.Reflection.Missing.Value;
Directory.CreateDirectory("C:
/CNSI");//创建文件所在目录
stringname="CNSI_"+DateTime.Now.ToShortString()+".doc";
objectfilename="C:
//CNSI//"+name;//文件保存路径
//创建Word文档
Word.ApplicationWordApp=newWord.ApplicationClass();
Word.DocumentWordDoc=WordApp.Documents.Add(refNothing,refNothing,refNothing,refNothing);
//添加页眉
WordApp.ActiveWindow.View.Type=WdViewType.wdOutlineView;
WordApp.ActiveWindow.View.SeekView=WdSeekView.wdSeekPrimaryHeader;
WordApp.ActiveWindow.ActivePane.Selection.InsertAfter("[页眉内容]");
WordApp.Selection.ParagraphFormat.Alignment=Word.WdParagraphAlignment.wdAlignParagraphRight;//设置右对齐
WordApp.ActiveWindow.View.SeekView=WdSeekView.wdSeekMainDocument;//跳出页眉设置
WordApp.Selection.ParagraphFormat.LineSpacing=15f;//设置文档的行间距
//移动焦点并换行
objectcount=14;
objectWdLine=Word.WdUnits.wdLine;//换一行;
WordApp.Selection.MoveDown(refWdLine,refcount,refNothing);//移动焦点
WordApp.Selection.TypeParagraph();//插入段落
//文档中创建表格
Word.TablenewTable=WordDoc.Tables.Add(WordApp.Selection.Range,12,3,refNothing,refNothing);
//设置表格样式
newTable.Borders.OutsideLineStyle=Word.WdLineStyle.wdLineStyleThickThinLargeGap;
newTable.Borders.InsideLineStyle=Word.WdLineStyle.wdLineStyleSingle;
newTable.Columns[1].Width=100f;
newTable.Columns[2].Width=220f;
newTable.Columns[3].Width=105f;
//填充表格内容
newTable.Cell(1,1).Range.Text="产品详细信息表";
newTable.Cell(1,1).Range.Bold=2;//设置单元格中字体为粗体
//合并单元格
newTable.Cell(1,1).Merge(newTable.Cell(1,3));
WordApp.Selection.Cells.VerticalAlignment=Word.WdCellVerticalAlignment.wdCellAlignVerticalCenter;//垂直居中
WordApp.Selection.ParagraphFormat.Alignment=Word.WdParagraphAlignment.wdAlignParagraphCenter;//水平居中
//填充表格内容
newTable.Cell(2,1).Range.Text="产品基本信息";
newTable.Cell(2,1).Range.Font.Color=Word.WdColor.wdColorDarkBlue;//设置单元格内字体颜色
//合并单元格
newTable.Cell(2,1).Merge(newTable.Cell(2,3));
WordApp.Selection.Cells.VerticalAlignment=Word.WdCellVerticalAlignment.wdCellAlignVerticalCenter;
//填充表格内容
newTable.Cell(3,1).Range.Text="品牌名称:
";
newTable.Cell(3,2).Range.Text=BrandName;
//纵向合并单元格
newTable.Cell(3,3).Select();//选中一行
objectmoveUnit=Word.WdUnits.wdLine;
objectmoveCount=5;
objectmoveExtend=Word.WdMovementType.wdExtend;
WordApp.Selection.MoveDown(refmoveUnit,refmoveCount,refmoveExtend);
WordApp.Selection.Cells.Merge();
//插入图片
stringFileName=Picture;//图片所在路径
objectLinkToFile=false;
objectSaveWithDocument=true;
objectAnchor=WordDoc.Application.Selection.Range;
WordDoc.Application.ActiveDocument.InlineShapes.AddPicture(FileName,refLinkToFile,refSaveWithDocument,refAnchor);
WordDoc.Application.ActiveDocument.InlineShapes[1].Width=100f;//图片宽度
WordDoc.Application.ActiveDocument.InlineShapes[1].Height=100f;//图片高度
//将图片设置为四周环绕型
Word.Shapes=WordDoc.Application.ActiveDocument.InlineShapes[1].ConvertToShape();
s.WrapFormat.Type=Word.WdWrapType.wdWrapSquare;
newTable.Cell(12,1).Range.Text="产品特殊属性";
newTable.Cell(12,1).Merge(newTable.Cell(12,3));
//在表格中增加行
WordDoc.Content.Tables[1].Rows.Add(refNothing);
WordDoc.Paragraphs.Last.Range.Text="文档创建时间:
"+DateTime.Now.ToString();//“落款”
WordDoc.Paragraphs.Last.Alignment=Word.WdParagraphAlignment.wdAlignParagraphRight;
//文件保存
WordDoc.SaveAs(reffilename,refNothing,refNothing,refNothing,refNothing,refNothing,refNothing,refNothing,refNothing,refNothing,refNothing,refNothing,refNothing,refNothing,refNothing,refNothing);
WordDoc.Close(refNothing,refNothing,refNothing);
WordApp.Quit(refNothing,refNothing,refNothing);
message=name+"文档生成成功,以保存到C:
CNSI下";
}
catch
...{
message="文件导出异常!
";
}
returnmessage;
}
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 动态 生成 Word 文档 数据 填入 表格