這篇文章主要講解了“C#如何動態生成Word文檔并填充數據”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“C#如何動態生成Word文檔并填充數據”吧!
天峻ssl適用于網站、小程序/APP、API接口等需要進行數據傳輸應用場景,ssl證書未來市場廣闊!成為創新互聯的ssl證書銷售渠道,可以享受市場價格4-6折優惠!如果有意向歡迎電話聯系或者加微信:13518219792(備注:SSL證書合作)期待與您的合作!
C#動態生成Word文檔步驟之一:添加引用->COM->Microsoft Word 11.0 Object Library
C#動態生成Word文檔步驟之二:在.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 = " 產品詳細信息表 " ; 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(); // 選中一行 object moveUnit = Word.WdUnits.wdLine; object moveCount = 5 ; object moveExtend = Word.WdMovementType.wdExtend; WordApp.Selection.MoveDown( ref moveUnit, ref moveCount, ref moveExtend); WordApp.Selection.Cells.Merge(); // 插入圖片 string FileName = Picture; // 圖片所在路徑 object LinkToFile = false ; object SaveWithDocument = true ; object Anchor = WordDoc.Application.Selection.Range; WordDoc.Application.ActiveDocument.InlineShapes.AddPicture(FileName, ref LinkToFile, ref SaveWithDocument, ref Anchor); WordDoc.Application.ActiveDocument.InlineShapes[ 1 ].Width = 100f; // 圖片寬度 WordDoc.Application.ActiveDocument.InlineShapes[ 1 ].Height = 100f; // 圖片高度 // 將圖片設置為四周環繞型 Word.Shape s = 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( ref Nothing); WordDoc.Paragraphs.Last.Range.Text = " 文檔創建時間: " + DateTime.Now.ToString(); // “落款” WordDoc.Paragraphs.Last.Alignment = Word.WdParagraphAlignment.wdAlignParagraphRight; // 文件保存 WordDoc.SaveAs( ref filename, ref Nothing, ref Nothing, ref Nothing, ref Nothing, ref Nothing, ref Nothing, ref Nothing, ref Nothing, ref Nothing, ref Nothing, ref Nothing, ref Nothing, ref Nothing, ref Nothing, ref Nothing); WordDoc.Close( ref Nothing, ref Nothing, ref Nothing); WordApp.Quit( ref Nothing, ref Nothing, ref Nothing); message = name + " 文檔生成成功,以保存到C:CNSI下 " ; } catch ... { message = " 文件導出異常! " ; } return message; }
這樣,就實現了 C#動態生成Word文檔。
感謝各位的閱讀,以上就是“C#如何動態生成Word文檔并填充數據”的內容了,經過本文的學習后,相信大家對C#如何動態生成Word文檔并填充數據這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是創新互聯,小編將為大家推送更多相關知識點的文章,歡迎關注!
分享文章:C#如何動態生成Word文檔并填充數據
URL分享:http://m.newbst.com/article10/pjcogo.html
成都網站建設公司_創新互聯,為您提供域名注冊、動態網站、微信公眾號、企業建站、外貿網站建設、手機網站建設
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯