try
{
this.conOleDB.Open();
command = new OleDbCommand(string.Format("UPDATE [{0}${1}:{2}] Set F1=\"{3}\"", new object[] { sheetName, cellName, cellName, value2Write }), this.conOleDB);
command.ExecuteNonQuery();
}
不管CellName为A2还是A5,所有的值全部写在了A1里面.....问题在哪呢?
你这个是吧excel当成数据库来用。那么你现在数据库只有一行,update当然更新了第一行。你要insert啊
command = new OleDbCommand(string.Format("UPDATE [{0}${1}:{2}] Set F1=\"{3}\"", new object[] { sheetName, cellName, cellName, value2Write }), this.conOleDB);
F1只能更新第一行F列
你可以循环
for (int i = 1; i < 10; i++)
{
command = new OleDbCommand(string.Format("UPDATE [{0}${1}:{2}] Set F{4}=\"{3}\"", new object[] { sheetName, cellName, cellName, value2Write }), this.conOleDB, i);
command.ExecuteNonQuery();
}