DateTime 形式の Call_Date 列を含む xls ファイルがあります。
このファイルを読み取って、接続文字列プロパティ HDR = No でデータテーブルに配置しようとしています。それを読み取るデータテーブルのヘッダー行が必要ありません。
私がデータテーブルで取得している最初の行は、最初の行に空の文字列を持つ call_date を除いて、xls の列の名前です。
日時として解析できない場合、OLEDBが日時形式として読み取ろうとし、 type = " System.DBNull " の空の文字列として配置しようとする可能性があることを理解できます。
しかし、他のようにデータテーブルの最初の行にこの call_date 列名を付ける必要があります。
xlsでフォーマットを変更できません。C# などで読みながらできますか。
これまでの私のコード
mCon.ConnectionString = ("Provider=Microsoft.ACE.OLEDB.12.0;data source=" + openFileDialog1.FileName + ";Extended Properties=\"Excel 12.0;HDR=NO\";");
strSelectQuery = "SELECT TOP 20 * FROM [Sheet1$]";
if (mCon.State == ConnectionState.Closed)
{
mCon.Open();
}
DataAdapter = new System.Data.OleDb.OleDbDataAdapter(strSelectQuery, mCon);
DataAdapter.Fill(mDTable);
mCon.Close();