使用C#将数据插入Excel(2007和2010)的最佳方法是什么?

时间:2011-09-26 15:53:31

标签: c# excel excel-2007

我目前的情况是我有20个Excel文件需要通过运行多个脚本来填充。目前这是一个手动过程。我即将开始一个小型项目,即使不是全部工作也应该自动化。

工具:
  我目前正在使用Excel 2007,但可能在不久的将来使用Excel 2010。我目前正计划使用VS 2005 Professionl或C#Express 2010.

我的方法是为20个文件创建模板,以便保存未更改的格式和数据。通过C#,我计划在每个文件的每个“工作表”内的适当单元格中插入数据。

我遇到过多种方法(这里和其他网站),即 -

  1. Excel Interop
  2. OLE DB
  3. ADO.NET
  4. Open XML
  5. 我试图找出某人之前是否做过类似的事情以及哪种技术最有效(如果可能,请提供一些解释或链接以获取更多信息)。

    如果这个问题过于主观且不恰当,我很抱歉。我会理解是否有人决定关闭它。

    感谢。

3 个答案:

答案 0 :(得分:1)

我可能会遗漏一些东西,但如果你在谈论C#,我会认为OLE DB和ADO.Net最终是一样的。基本上,您将使用OLE DB提供程序for Excel for ADO.Net。 我建议http://www.connectionstrings.com/了解如何设置您的提供商。

但是,如果您打算使用模板,那很简单。只需在Excel文件中设置“表格”即可。确保使用命名范围。剩下的就是编写一些基本的SQL,如:

INSERT INTO customers(id,name) VALUES (?, ?)

就是这样。我偶尔会用它来进行数据操作。我更经常地使用它进行数据读取。

此致

埃里克。

答案 1 :(得分:0)

我认为OLE DB是最简单的方法。

答案 2 :(得分:0)

OLEDB对我来说是最好的方式。