我已将此网站用作我想做的事情的基础: http://www.codeproject.com/script/Articles/ViewDownloads.aspx?aid=8500
基本上,我想在我的 C# Windows 窗体应用程序中使用 OleDb 将一些数据添加到我现有的 Excel 电子表格中的特定单元格。我找到的所有示例都希望我有某种类型的标题单元格。就像我的“A1”单元格中有“标题”一样,我可以使用:
"INSERT INTO [SHEET1$] (Title) Values ('Book')"
问题是我的 Excel 电子表格没有任何标题。我需要做的是:
"INSERT INTO [SHEET1$] (A15) Values ('Book')".
谁能帮我弄清楚如何将数据放入电子表格周围的特定单元格中?
最佳答案
如果你还有兴趣,
没有真正的方法可以使用 OleDb 插入命令指定要写入的单元格,OleDbCommand 将自动转到指定列中的下一个打开行。但是,您可以使用更新查询,例如:
sql = "Update [Sheet1$A1:A15] SET A15 = 'DesiredNumber'";
myCommand.CommandText = sql;
myCommand.ExecuteNonQuery();
鉴于您已经定义,这应该可以工作:
System.Data.OleDb.OleDbConnection MyConnection;
System.Data.OleDb.OleDbCommand myCommand = new System.Data.OleDb.OleDbCommand();
string sql = null;
MyConnection = new System.Data.OleDb.OleDbConnection("provider=Microsoft.Jet.OLEDB.4.0;Data Source='c:\\Example.xls';Extended Properties=Excel 8.0;");
MyConnection.Open();
myCommand.Connection = MyConnection;
关于c# - 在 C# 中使用 OleDb 将数据插入 Excel 2007,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4718171/