OleDbException。 没有给出一个或多个所需参数的值
string connString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + Application.StartupPath + "\\a.xlsx" + ";Extended Properties='Excel 12.0 Xml;HDR=No'"; OleDbConnection conn = new OleDbConnection(connString); OleDbCommand cmd = new OleDbCommand("Update [tablenameeee$] SET A1='15'", conn); conn.Open(); cmd.ExecuteNonQuery(); conn.Close();
我想访问Excel中的特定单元格,并更改其值。 但我得到了例外
OleDbException。 没有给出一个或多个所需参数的值。解决scheme是什么?
如果您使用HDR = NO,列名是F1,F2 F3等……
OleDbCommand cmd = new OleDbCommand("Update [tablenameeee$] SET F1='15'", conn);
但我认为你应该指定一个WHERE子句来分隔受影响的行。
记住,使用OleDb你不应该考虑行/列而是以logging的方式。
另外,如果您确切地知道要更新的行/列,您可以使用
OleDbCommand cmd = new OleDbCommand("Update [tablenameeee$A1:A1] SET F1='15'", conn);
也许你需要一个where子句
Update [tablenameeee$] set [F1] = 15 where [F2] = 3
或者如果你想访问一个特定的单元格,并且你知道它是哪个单元格,那么Steve的解决scheme就会像你的手套一样适合你。