| 代码如下:
引用 Microsoft Word 11.0 Object Library public bool ExportWord( DataTable Table ) { object Missing = System.Reflection.Missing.Value; int NumRows, NumColumns, rowIndex, colIndex; object FileName = Word文件名; //如:c:\tets.doc Word.ApplicationClass wordApp = new Word.ApplicationClass(); Word.Document myDoc = null; Word.Table oTable; rowIndex = 1; colIndex = 0; try { wordApp.Documents.Add(ref Missing,ref Missing,ref Missing, ref Missing); myDoc = wordApp.ActiveDocument; oTable = myDoc.Tables.Add(myDoc.Range(ref Missing, ref Missing),NumRows=Table.Rows.Count + 1, NumColumns=Table.Columns.Count,ref Missing,ref Missing);
foreach(DataColumn Col in Table.Columns) { colIndex = colIndex + 1; oTable.Cell(1, colIndex).Range.InsertAfter(Col.ColumnName); }
foreach(DataRow Row in Table.Rows) { rowIndex = rowIndex + 1; colIndex = 0; foreach(DataColumn Col in Table.Columns) { colIndex = colIndex + 1; oTable.Cell(rowIndex, colIndex).Range.InsertAfter(Row[Col.ColumnName].ToString()); } }
oTable.Borders.InsideLineStyle = Word.WdLineStyle.wdLineStyleDashDot; oTable.Borders.OutsideLineStyle = Word.WdLineStyle.wdLineStyleDot; wordApp.Visible = false; myDoc.SaveAs2000(ref FileName,ref Missing,ref Missing,ref Missing,ref Missing,ref Missing,ref Missing,ref Missing,ref Missing,ref Missing,ref Missing ); return true; } catch { return false; } finally { myDoc.Close( ref Missing,ref Missing,ref Missing ); System.Runtime.InteropServices.Marshal.ReleaseComObject( myDoc ); myDoc = null; GC.Collect(); wordApp.Quit( ref Missing,ref Missing, ref Missing ); System.Runtime.InteropServices.Marshal.ReleaseComObject( wordApp ); wordApp = null; GC.Collect(); } |