Csharp/C#教程:C#生成Word文档代码示例分享

publicboolCreateWordFile(string_filename,"数据List或者你C#要写的数据") { #region开始生成Word try { stringstrtitle="任务导出"; objectoEndOfDoc="//endofdoc"; ObjectNothing=System.Reflection.Missing.Value; Objectfilename=_filename; //创建Word文档 Microsoft.Office.Interop.Word.ApplicationWordApp=newMicrosoft.Office.Interop.Word.ApplicationClass(); Microsoft.Office.Interop.Word.DocumentWordDoc=WordApp.Documents.Add(refNothing,refNothing,refNothing,refNothing); //设置页眉 WordApp.ActiveWindow.View.Type=Microsoft.Office.Interop.Word.WdViewType.wdOutlineView; WordApp.ActiveWindow.View.SeekView=Microsoft.Office.Interop.Word.WdSeekView.wdSeekPrimaryHeader; WordApp.ActiveWindow.ActivePane.Selection.InsertAfter("WPFOA任务导出"); WordApp.Selection.ParagraphFormat.Alignment=Microsoft.Office.Interop.Word.WdParagraphAlignment.wdAlignParagraphRight;//设置右对齐 WordApp.ActiveWindow.View.SeekView=Microsoft.Office.Interop.Word.WdSeekView.wdSeekMainDocument;//跳出页眉设置 //任务导出------免费精选名字大全 Word.ParagraphoPara1; oPara1=WordDoc.Content.Paragraphs.Add(refNothing); oPara1.Range.Text=strtitle; oPara1.Range.Font.Bold=1; oPara1.Range.Font.Name="宋体"; oPara1.Range.Font.Size=20; oPara1.Range.ParagraphFormat.Alignment=Word.WdParagraphAlignment.wdAlignParagraphCenter; oPara1.Format.SpaceAfter=5;//24ptspacingafterparagraph. oPara1.Range.InsertParagraphAfter(); #region循环每个表 foreach(varvinlst_task) { #region循环每一个列,产生一行数据 //描述信息 Word.ParagraphoPara3; objectoRng=WordDoc.Bookmarks.get_Item(refoEndOfDoc).Range; oPara3=WordDoc.Content.Paragraphs.Add(refoRng); oPara3.Range.Text=""; oPara3.Range.Font.Bold=0; oPara3.Range.Font.Name="宋体"; oPara3.Range.Font.Size=9; oPara3.Range.ParagraphFormat.Alignment=Word.WdParagraphAlignment.wdAlignParagraphCenter; oPara3.Format.SpaceBefore=1; oPara3.Format.SpaceAfter=1; oPara3.Range.InsertParagraphAfter(); //插入表格 Word.TablenewTable; Word.RangewrdRng=WordDoc.Bookmarks.get_Item(refoEndOfDoc).Range; newTable=WordDoc.Tables.Add(wrdRng,5,4,refNothing,refNothing); newTable.Columns[1].Width=60; newTable.Columns[2].Width=145; newTable.Columns[3].Width=80; newTable.Columns[4].Width=145; newTable.Borders.OutsideLineStyle=Microsoft.Office.Interop.Word.WdLineStyle.wdLineStyleSingle; newTable.Borders.InsideLineStyle=Microsoft.Office.Interop.Word.WdLineStyle.wdLineStyleSingle; //填充表格内容 newTable.Cell(1,1).Range.Text="项目名称"; newTable.Cell(1,2).Range.Text="1"; newTable.Cell(1,3).Range.Text="模块名称"; newTable.Cell(1,4).Range.Text="2"; newTable.Cell(2,1).Range.Text="负责人名"; newTable.Cell(2,2).Range.Text="3"; newTable.Cell(2,3).Range.Text="状态"; newTable.Cell(2,4).Range.Text="4"; newTable.Cell(3,1).Range.Text="发布时间"; newTable.Cell(3,2).Range.Text="5"; newTable.Cell(3,3).Range.Text="要求完成时间"; newTable.Cell(3,4).Range.Text="6"; newTable.Cell(4,1).Range.Text="完成时间"; newTable.Cell(4,2).Range.Text="7"; newTable.Cell(4,3).Range.Text="分配人"; newTable.Cell(4,4).Range.Text="8"; newTable.Cell(5,1).Range.Text="任务描述"; newTable.Cell(5,2).Merge(newTable.Cell(5,4)); newTable.Cell(5,2).Range.ParagraphFormat.Alignment=Word.WdParagraphAlignment.wdAlignParagraphLeft; newTable.Cell(5,2).Range.Text="12313213123213"; #endregion } 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); #endregion //关闭WinWord进程 System.Diagnostics.Process[]MyProcess=System.Diagnostics.Process.GetProcessesByName("WINWORD"); MyProcess[0].Kill(); returntrue; } catch { System.Diagnostics.Process[]MyProcess=System.Diagnostics.Process.GetProcessesByName("WINWORD"); MyProcess[0].Kill(); returnfalse; } #endregion } 您可能感兴趣的文章:C#根据Word模版生成Word文件C#生成word记录实例解析C#生成Word文件(图片、文字)

标签: 示例

C++ 中回文数判断简单实例

老生常谈C/C++内存管理

上述就是C#学习教程:C#生成Word文档代码示例分享的全部内容,如果对大家有所用处且需要了解更多关于C#学习教程,希望大家多多关注—计算机技术网(www.ctvol.com)!

本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。

ctvol管理联系方式QQ:251552304

本文章地址:https://www.ctvol.com/cdevelopment/906495.html

(0)
上一篇 2021年10月23日
下一篇 2021年10月23日

精彩推荐