ExcelWork.info

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

Excel VBA のクラスを使ってデータベースへ接続する(ADO)

      2018/07/16

データベースの処理をクラスモジュールに書く

ExcelVBAで、クラス使用する方法の詳細については、VBAで、クラスを作成(クラスモジュール・インスタンス) を参照してください。
また、ADOで、データベースに接続する方法に関しては、Excel VBA データベース(ADO) を参照してください。

データベースへの接続をクラスを使用して処理する例です。
ここでは、データベースへの接続・解除、トランザクションの処理等をクラスモジュールに記述します。クラス名は「DBConnection」とします(サンプルVBAソース その1)。
実際にクラスを利用するには、標準モジュールを使用します。
・「Access に接続し、重複レコードを削除」(サンプルVBAソース その2
・「Excel にデータベースとして接続しデータを表示」(サンプルVBAソース その3


サンプルVBAソース その1(クラスモジュール)



サンプルVBAソース その2(標準モジュール)


実行結果

サンプルVBAソースその2 実行前の Access(mydb1.accdb)テーブル6

DB Class Access 重複レコードの削除1

サンプルVBAソースその2 実行後の Access(mydb1.accdb)テーブル6

DB Class Access 重複レコードの削除2



サンプルVBAソース その3(標準モジュール)


実行結果

DB Class Excel へ接続



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

Message

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

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

  関連記事

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

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

ADOX データベース作成1
データベースを作成する(ADOX)

ADOX を使用してデータベース(Access)を作成 Catalog オブジェ …

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

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

CSVフィアルに接続(ADO)
CSVファイルに接続(ADO)

ADOでCSVファイルに接続 ADO を使用してCSVファイルを読み込みます。C …

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

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

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

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

Command.Execute Insert Into 文
SQL文を実行する(ADO)Execute メソッド

Command オブジェクトの Execute メソッドで、SQL文を実行 Co …

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

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

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

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

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

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