【VBA】ADODB接続中のExcelシートの情報をADOXで取得!

VBAでExcelシートにADODB接続する際

どのようにシート情報を取得して
シート指定すればいいのだろう…?

とふと思い

出来た事を備忘録として残しておこうと思います!

MEMO
開発環境
Windows10 64bit
Office 2016

ADOXを使ってシート情報を取得

ADODBでExcelファイルに接続

まずは対象のExcelに接続しましょう!

合わせて読みたい記事

【VB.NET】ADODBを使ってExcelデータをSQL操作してみた

接続中のExcelのシート情報取得

次にADOXという
ADOの拡張機能を使って
接続しているExcelのシート情報を取得します!

まず参照設定で以下を選択!
「Microsoft ADO Ext. 6.0 for DDL and Security」

そして接続しているExcelの
1シート目の名前を取得してみる!

Tablesのインデックスを0にすることで
1シート目のシート情報を取得できました!

シートを指定してデータを取得

シート名をテーブル名として
SQL実行すればデータ取得できますね!

今回はこのADOXが自分なりの発見でした!!!

前もってExcelを開いて
シート情報の取得など処理をせずに
接続中に処理できるので便利だなと思いました!

詳しい説明はこちらを参考にしてみて下さい!

※参考:復刻 ADOX入門講座 全9回(完了)

Access接続用のADOXですが
Excel接続でもこんな風に使えました!