将数据插入Excel电子表格并打印

时间:2012-04-13 19:45:52

标签: c# .net excel

我的问题是:

我已经提供了一个电子表格,可以模拟人们希望从应用程序打印的内容。 Excel工作表单元格映射到数据网格视图单元格。 用户将单击数据网格中的单元格,然后程序将新数据插入Excel工作表单元格。

然后应该打印纸张。

我的问题是:

1-是否可以将DB / datagridview数据写入电子表格字段,然后通过代码打印电子表格? 2-或者我最好从头开始用C#创建报告?

1 个答案:

答案 0 :(得分:1)

您可以使用excel互操作。只需添加对项目的引用(在com部分中)。然后,您可以写入文件。

using Excel = Microsoft.Office.Interop.Excel;

Excel.Application xlApp; 
Excel.Workbook xlWorkBook; 
Excel.Worksheet xlWorkSheet; 
object misValue = System.Reflection.Missing.Value; 

xlApp = new Excel.ApplicationClass(); 
xlWorkBook = xlApp.Workbooks.Open(_filename, 0, true, 5, "", "", true, Excel.XlPlatform.xlWindows, "\t", false, false, 0, true, 1, 0); 
xlWorkSheet = (Excel.Worksheet)xlWorkBook.Worksheets.get_Item(1); 

//Attribute a value to a cell
var cell = (Range)xlWorkSheet .Cells[row, column];
cell.Value2 = "Test";

//This should print
xlWorkBook.PrintOut (Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value);

xlWorkBook.Close(false, misValue, misValue); 
xlApp.Quit();