如何使用C#写入现有Excel(xlsx)文件中的特定单元格

时间:2011-09-19 21:56:15

标签: c# excel cell

我设法使用IExcelDataReader从Excel文件中读取,现在我希望写入现有Excel文件中的特定单元格,因此我需要指定应插入数据的文件,列和行的路径。我用谷歌搜索并找到了一些例子,但是解决方案是否有效存在争议。那么这是最简单的方法(代码示例appriciated)。感谢。

编辑:所以我尝试这样做:

Excel.Application ExcelObj = new Excel.Application();
Excel.Workbook theWorkbook = ExcelObj.Workbooks.Open("Path", 0, true, 5,"", "", true,     Excel.xlWindows, "\t", false, false,0, true); 

但是获取类型或命名空间名称“Application”在命名空间Excel中不存在。 “工作簿”也是如此。

我添加了引用Microsoft.Office.Interop.Excel和Office。我还需要什么?

2 个答案:

答案 0 :(得分:0)

使用以下内容可以解决命名空间问题:

using Excel = Microsoft.Office.Interop.Excel;

要写入单元格,您可以使用以下内容(假设您已有Worksheet个对象):

xlWorksheet.Cells["1", "A"] = "Foo";

这是我已经使用了几年的方法,并且它每次都没有失败。

答案 1 :(得分:0)

您也可以尝试使用某些rpa工具(例如G1ANT)来执行此操作。 这将使您的工作更加轻松。 尝试使用以下简单代码更新单元格:

addon xlsx version 4.101.0.0
addon core version 4.101.0.0
addon language version 4.103.0.0
xlsx.open C:\Documents\TestBook.xlsx createifnotexist true
xlsx.setvalue value 123 row 1 colname a
xlsx.close