次のコードを使用して、C# で特定の Excel ワークブックの列を読み取るときにエラーが発生します。
DataTable dtCols = new DataTable();
try
{
dtCols = connExcel.GetOleDbSchemaTable(OleDbSchemaGuid.Columns, null);
}
System.Data.OleDb.OleDbException (0x80004005): Microsoft Jet データベース エンジンは、オブジェクト 'Sheet1$_' を見つけることができませんでした。オブジェクトが存在すること、およびその名前とパス名のつづりが正しいことを確認してください。
私のシート名は「Sheet1」ですが、システムがスキーマ内の非表示のテーブルの 1 つの列を読み取ろうとしているようです。そのシート名の末尾にアンダースコアがあることに注意してください。
そのコード行でエラーが発生しないようにするにはどうすればよいですか? これを修正するために制限パラメーターを利用する方法はありますか?
ありがとう。