我如何写一个Excel中使用Microsoft.Office.Interop.Excel.Application在C#中

我想有一个简单的例子来写入Excel电子表格使用Microsoft.Office.Interop.Excel.Application对象在C#

任何人请帮助谢谢

根据MS,服务器场景(如ASP.NET)不支持Interop 。

在服务器上没有Interop /安装Excel的情况下,有很多选项可以读取/编辑/创buildExcel文件:

MS提供免费的OpenXML SDK V 2.0 – 请参阅http://msdn.microsoft.com/zh-cn/library/bb448854%28office.14%29.aspx (仅限XLSX)

这可以读取+写入MS Office文件(包括Excel)。

另一个免费的选项见http://www.codeproject.com/KB/office/OpenXML.aspx (仅限XLSX)

如果您更需要处理旧的Excel版本(比如XLS,不仅仅是XLSX),渲染,创buildPDF,公式等,那么还有不同的免费和商业库,如ClosedXML (免费,仅限XLSX), EPPlus (免费,仅限XLSX) , Aspose.Cells , SpreadsheetGear , LibXL和Flexcel等。

下面是创build新工作簿并将值写入单元格的一个简单示例。

using Excel = Microsoft.Office.Interop.Excel; var xlApplication = new Excel.Application(); var workbooks = xlApplication.Workbooks; Excel.Workbook sampleWorkbook = workbooks.Add(); Excel.Worksheet sampleWorksheet = sampleWorkbook[1]; Excel.Range sampleCell = sampleWorksheet.get_Range("A1"); sampleCell.Value = "New Value"; sampleWorkbook.SaveAs("Output.xlsx"); sampleWorkbook.Close(); xlApplication.Quit(); 

从我以前使用Microsoft.Office.Interop.Excel的经验来看,我可以告诉你,它将会变成一团糟。 相反,我build议使用像EPPlus这样的托pipeExcel引擎

http://epplus.codeplex.com/

我使用EPPlus实现了几个Excel导出function,效果很好。