ExcelWork.info

Excel(エクセル)のマクロ・VBA・関数・操作などのメモ

Excelファイルに接続(ADO)

   

ADOでExcelファイルに接続

ADO を使用してExcelファイルを読み込みます。Excelファイルをデータベースとみなし、SQL文を使うことが出来ます。


【接続文字列】

<ConnectionString(ADO)に設定する文字列>
Provider = OLEDBProvider
Data Source = DBFileName;
Extended Properties = EXProperties;


引数・戻り値

  • DBFileName  ・・・  対象となるExcelファイルのパスとファイル名を指定します。)
  • OLEDBProvider  ・・・  Excel2007以降で作成したブックに接続する場合は、Microsoft.ACE.OLEDB.12.0;、Excel2002/2003で作成したブックに接続する場合は、Microsoft.Jet.OLEDB.4.0; を指定します。
  • EXProperties  ・・・  3つのプロパティ値を指定します。各プロパティ値は「;(セミコロン)」で区切ります。全体を「”」で括ります。
    (例)Extended Properties = “Excel 12.0;HDR=Yes;”

Extended Properties に指定する各プロパティ値について
Excel 12.0 の部分は、データベースの種類を表しています。Excel2007以降で作成したブックに接続する場合は、Excel 12.0、Excel2002/2003で作成したブックに接続する場合は、Excel 8.0 を指定します。
HDR は、シートの1行目をフィールド名として扱うかどうかを指定します。No を指定した場合、フィールド名は、F1、F2、F3 のように F[列番号] で表示されます。

Excelのシート、セル範囲を、テーブルとして扱います。
ワークシート全体:Select * from [Sheet1$]
名前なしセル範囲:Select * from [Sheet1$A2:E10]
名前付きセル範囲:Select * from 範囲名



Excelファイルへ接続する例

サンプルVBAソース


実行結果

Excelに接続する(ADO)



 - データベース , , , , , , , ,

Message

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください

  関連記事

RecordCount プロパティ(ADO)
Recordset オブジェクト内のレコード数(ADO)RecordCount プロパティ

RecordCount プロパティ Recordset オブジェクトのレコード数 …

SQL実行結果
データベース(Oracle)に接続する(ODBC を使用)

ODBC接続(ADO) ADOで、ODBC(Open Database Conn …

ADOX インデックスを作成する1
インデックス、プロパティの設定(ADOX)

インデックスを作成する index オブジェクト 【書式】 <CreateObj …

ado Field オブジェクト
フィールド名(ADO)Field オブジェクト

Field オブジェクト Recordset オブジェクト内の列(フィールド)を …

ADOX クエリを作成
クエリの作成・削除(ADOX)

ADOX を使用してクエリを作成・削除 クエリを作成する手順 【書式】 <参照設 …

ADOX テーブルの作成
テーブルの作成・削除/フィールドの作成・削除(ADOX)

ADOX を使用してテーブル・フィールド(列)を作成・削除 Table オブジェ …

AddNew メソッド(ADO)
レコードの追加(ADO)AddNew メソッド,Update メソッド

データベースにレコードを追加する AddNew メソッド 新規レコードを追加し、 …

Sort プロパティ(ADO)
レコードを並べ替える(ADO)Sort プロパティ

データベースのレコードを並べ替える Sort プロパティ 【書式】 object …

Parameters.Refresh エラー
クエリにパラメータを渡して結果を取得する(ADO)Command オブジェクト・Execute メソッド

クエリにパラメータを渡して結果を取得する手順 Command オブジェクトの作成 …

ora ファイル
データベース(Oracle)に接続する(OLE DB を使用)

OLE DB プロバイダ OLE DBには、Oracle 提供の Oracle …