2

現在ACE.OLEDB.12、Excel データ テーブルのクエリに使用していますが、イライラするプロバイダーの制限に遭遇しました。プロバイダーは最初の 256 列と 65536 行しかアドレス指定できないため、そのウィンドウの外にデータ テーブルを配置すると、エンジンはrange not foundというエラー メッセージを返します。

を使用して、以下の例のようにデータテーブルから直接データをクエリできる他のデータプロバイダーを知っている人はいますACE.OLEDB.12か?

SELECT * FROM [Main Sheet$IG7:IU9]
4

2 に答える 2

1

私はADODBいつも使用していますが、同じ問題があります。SOでさえ、どこでも答えを探しましたが、運がありませんでした。

私が見つけた唯一の回避策は、データをシートの先頭に移動することです。データが で始まる場合A1Sheet1シートのみを参照する限り、クエリは追加の行と列を取り込みますSELECT * FROM [Sheet1$]。私はこれをテストしていませんACE.OLEDBが、確かに動作しADODBます。

于 2014-09-19T09:47:35.663 に答える
0

ClosedXMLを使用して XLSX ファイルを照会できます。もちろん、SQL 機能は提供しませんが (代わりに、VBA と同様に動作します)、Excel も AccessDatabaseEngine もターゲット マシンにインストールする必要がないという利点があります。一見の価値があるかもしれません。

于 2014-09-19T09:55:11.407 に答える