C编程实现动态生成word文档.docVIP

  • 9
  • 0
  • 约1.04万字
  • 约 9页
  • 2016-09-21 发布于重庆
  • 举报
C编程实现动态生成word文档

如何用C#编程实现动态生成Word文档并填充数据的效果呢?要使用C#操作word,首先要添加引用: ??? 1、添加引用-COM-Microsoft Word 11.0 Object Library ??? 2、在.cs文件中添加 ??? using? Word; ??? 下面的例子中包括C#对Word文档的创建、插入表格、设置样式等操作: ??? (例子中代码有些涉及数据信息部分被省略,重要是介绍一些C#操作word文档的方法) ??? public?? string? CreateWordFile( string? CheckedInfo) ??? ... { ??? string? message? =?? ; ??? try ??? ... { ??? Object Nothing? =? System.Reflection.Missing.Value; ??? Directory.CreateDirectory( C:/CNSI );?? // 创建文件所在目录 ??? string? name? =?? CNSI_ ?? +? DateTime.Now.ToShortString() + .doc ; ??? object? filename? =?? C://CNSI// ?? +? name;?? // 文件保存路径 ??? // 创建Word文档 ??? Word.Application WordApp? =?? new? Word.ApplicationClass(); ??? Word.Document WordDoc? =? WordApp.Documents.Add( ref? Nothing,? ref? Nothing,? ref? Nothing,? ref? Nothing); ??? // 添加页眉 ??? 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; // 设置文档的行间距 ??? // 移动焦点并换行 ??? object? count? =?? 14 ; ??? object? WdLine? =? Word.WdUnits.wdLine; // 换一行; ??? WordApp.Selection.MoveDown( ref? WdLine,? ref? count,? ref? Nothing); // 移动焦点 ??? WordApp.Selection.TypeParagraph(); // 插入段落 ??? // 文档中创建表格 ??? Word.Table newTable? =? WordDoc.Tables.Add(WordApp.Selection.Range,? 12 ,? 3 ,? ref? Nothing,? ref? Nothing); ??? // 设置表格样式 ??? 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? =?? 产品详细信息表 ; ??? new

文档评论(0)

1亿VIP精品文档

相关文档