2
Я пытаюсь прочитать и обновить Excel с помощью Oledb и Dataset в C#.Не удается обновить файл Excel, если Excel не открыт?
Чтение Работа прекрасна, даже если файл Excel открыт или нет.
Операция обновления работают только если файл открыт но Update Операция ошибка дает, если файл Excel не Open
Code :
string query2 = "SELECT * FROM [Fixtures Input$A:IP]";
string qupdate;
string conStr = @"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + Server.MapPath("SAE.xls") + ";Mode=ReadWrite;" + "Extended
Properties=\"Excel 8.0;IMEX=0;HDR=YES;TypeGuessRows=0;ImportMixedTypes=Text\"";
con = new OleDbConnection(conStr);
con.Open();
cmd2 = new OleDbCommand(query2, con);
adap2 = new OleDbDataAdapter(cmd2);
ds2 = new DataSet();
adap2.Fill(ds2, "Fixtures Input");
#region "DoingRowEmpty"
for (int i = 1; i <= 10; i++)
{
DataRow aaa = ds2.Tables[0].Rows[i];
aaa.BeginEdit();
//aaa.ItemArray[2] = "test";
aaa.EndEdit();
id = Convert.ToString(i);
qupdate = "UPDATE [Fixtures Input$] SET [Fixtures] = '', [Fixture Type] = '', [x] = '' , [(R/N)] = '' , [Fixture Quantity] = '' ,"
+ " [Quantity of Gangs] = '' , [Sensor mount] = '' , [new lamps] = '', [High bay] = '', [burn/year] = '' ,[Ladder] = '' where [id] = '" + id + "'";
adap2.UpdateCommand = new OleDbCommand(qupdate, con);
adap2.Update(ds2.Tables[0]);
}
#endregion
любые предложения плз?
какая ошибка вы получаете? –
ошибка: несоответствие типа данных в выражении критериев. но если я открою Excel и запустим, проект будет успешно выполнен – user1187585