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 を使っています。コメントデータの処理方法の詳細はこちらをご覧ください

  関連記事

Recordsetオブジェクト内のカーソル移動
カレントレコードの移動(ADO)MoveFirst、MoveLast、MoveNext、MovePrevious、Move

MoveFirst メソッド、MoveLast メソッド、MoveNext メソ …

CopyFromRecordset メソッド
Recordset オブジェクトの内容をワークシートにコピーする(CopyFromRecordset メソッド・ADO)

CopyFromRecordset メソッド ADO の Recordset オ …

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

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

トランザクション01
トランザクション(ADO)BeginTrans、CommitTrans、RollbackTrans

ADO でのトランザクション処理 【書式】 Sub Sample_Transac …

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

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

ADOX テーブル名・クエリ名を取得
テーブル名、クエリ名の取得(ADOX)

テーブル名の取得 Table.Type プロパティ 【書式】 <取得> obje …

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

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

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

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

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

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

Filter プロパティ(ADO)
レコードを指定した条件で抽出する(ADO)Filter プロパティ

データベースのレコードを指定した条件で抽出する Filter プロパティ 【書式 …