エクセルへの書き込みについて

[戻る]
らる 2009/06/13(土) 18:15:29
またまたお世話になります。
エクセルシートのデータん更新で悩んでおります。
エクセルシートには以下の列が有ります。

 No
 X1
 Y1

以下のようなコードで書き込みができないかなと試行錯誤しています。

OleDbConnection dce = new OleDbConnection();
DataSet dse = new DataSet();
OleDbDataAdapter dae;
        
dce.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=
           〜.xls;Extended Properties=Excel 8.0;";
dce.Open();
dae = new OleDbDataAdapter("select * from [Sheet1$]", dce);

dae.FillSchema(dse, SchemaType.Source, "[Sheet1$]");
dae.Fill(dse, "Sheet1$");
            
OleDbCommand dd = new OleDbCommand(
     "UPDATE [Sheet1$] SET X1=@X1,Y1=@Y1 WHERE No=@NO", dce);

dd.Parameters.Add("X1", OleDbType.Char).Value = "999";
dd.Parameters.Add("Y1", OleDbType.Char).Value = "888";
dd.Parameters.Add("NO", OleDbType.Char).Value = "3";
dd.ExecuteNonQuery();

実行自体はすんなり通っているようですが、ファイルにほうには反映されておりません。
どなたか問題点、改善項目についてご教示いただけませんでしょうか。
よろしくお願いします。

らる 2009/06/14(日) 00:23:20
[[解決]]
自己レスですが。
SQL文のフィールド名を[]で囲むようにしたところ、ファイルへの書き込みができまし
た。お騒がせしましたm(__)m。

古いスレッドには追加発言できません。