このコードを使用して XML ワークシートを読み取ろうとすると、奇妙な動作が発生します。
string CONNEC_STRING = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source={0};Extended Properties=\"Excel 8.0;HDR=No;IMEX=2;\"";
string fullFilePath = @"C:\Tmp\TestFile.xls";
using (OleDbConnection objCon = new OleDbConnection(string.Format(CONNEC_STRING, fullFilePath)))
{
using (OleDbCommand cm = new OleDbCommand("Select * From [MYCELLSRANGE]", objCon))
using (OleDbDataAdapter da = new OleDbDataAdapter(cm))
{
DataTable dt = new DataTable();
objCon.Open();
da.Fill(dt);
objCon.Close();
}
}
Excel ファイルを閉じると、「外部テーブルが予期された形式ではありません」というエラーが表示されます。ファイルを開いて上記のコードを実行すると、問題なく動作し、MYCELLSRANGE に含まれるデータを読み取ることができます。それで、この問題について誰か考えがありますか?回答ありがとうございます。