2016-03-22 1 views
0

Excel * .xlsxファイルを読み込もうとしています。 エラー "外部テーブルが予期された形式ではありません" 2つのファイルが読み込まれていますが、もう1つは読み込めません。第二のファイルのために例外がC#を使用してExcelファイルを読み込んでいます - 外部テーブルが予期しない形式です

string connectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + path + ";Extended Properties=Excel 12.0;"; 
var adapter = new OleDbDataAdapter("SELECT [ID] FROM [mySheet$]", connectionString); 
var ds = new DataSet(); 
adapter.Fill(ds, "IDs_Create"); 

2のためにスローされ、私は列名[ID]の両方をチェックしてみました。この例外 のための可能な理由が何であるかに助けてください 同じデータを持つファイルは同じです。 ファイルの拡張も同じです。

+0

エラーの原因となったファイルはどのように作成されましたか?私は、Open XML SDKで作成されたExcelの.XLSX形式のファイルがOleDbライブラリで読み込めないことがあることを発見しました。 –

+0

また、サーバー上でこのコードを実行する場合は、これらのライブラリがサーバー上で実行されるように設計されていないため、OLEDBを使用しないでください。 Office Interopsもそうではありません。 – krillgar

+0

@krillgar - あなたはそれについて詳述できますか? OleDbライブラリは、リンクされているサーバやその他の外部ソースの数がSQL Serverなどに接続するための基本であり、OleDBがサーバ上で動作するようには設計されていません。 –

答えて

0

使用しようとしているファイルに「ID」列に数式(関数)がありますか?

+0

数式なし..この列の各セルの左上隅に緑色の三角形記号が表示されます – Bh00shan

+0

https:// support.office.com/en-us/article/What-are-those-buttons-and-triangles-in-my-cells-203e34e6-ba90-4158-ae58-33397dda3ca9?ui=en-US&rs=en-US&ad= US#bmtriangles –

+0

これらの緑色の三角形は、式のエラーを示しています –

関連する問題