Chatgpt×Excel活用方法 ChatGPT活用術 マクロ作成

ChatGPTでDB接続(ADODB)マクロ生成|Excelからデータベース操作をAIで自動化

Excel業務の中には、外部データベースからデータを取得したり、更新したりする処理が必要になるケースが多くあります。販売管理システム、顧客データベース、在庫台帳、会計システムなど、社内の多くのデータはSQL Server・Access・Oracle・MySQLなどのDBに保管されています。しかし、ExcelとDBを連携するVBAコード(特に ADODB を使った接続)は、専門的な知識が必要で、初心者が一から書こうとすると非常に難しく感じます。

接続文字列(ConnectionString)、Recordset操作、SQL構文、エラー処理、参照設定、Close/Set Nothing まで、一つでも間違えると動作しなくなるため、DB接続は“Excel VBAの中でも最も難しい領域”といわれています。

そこで強力に役立つのが、ChatGPTにADODBを使ったDB接続マクロを生成させる方法です。
ChatGPTは「どのデータベースに接続したいか」「どんなデータを取得したいか」を日本語で説明するだけで、接続文字列の生成からSQL文の作成、Recordsetの取り扱いまで、完全なマクロを自動で作成できます。

この記事では、ChatGPTを使って Excel ↔ DB を連携する“ADODBマクロ”を安全かつ簡単に生成する手順、プロンプト例、実務で使える応用方法を詳しく解説します。

目次

✅ ChatGPTでADODBマクロを生成する前に知っておくべき基礎知識

・ADODBとは?

ADODB(ActiveX Data Objects)は、Excel VBAから外部データベースへ接続し、SQLを使ってデータの取得や更新を行うための仕組みです。

ChatGPTはこの構造をすべて理解しているため、自然文で指示するだけで正しいコードを生成できます。

・接続文字列(Connection String)

データベースへの“入口情報”で、次のような要素を含みます。

  • Provider
  • Data Source(サーバー名、ファイルパス)
  • Initial Catalog(DB名)
  • UID/PWD(ユーザー名・パスワード)
  • Trusted_Connection(Windows認証)

ChatGPTはこれらを組み合わせた ConnectionString を自動で組み立てます。

・Recordset(取得したデータの入れ物)

ChatGPTはRecordsetの扱いも自動で記述します。

  • rs.Open SQL, conn
  • rs.Fields("列名")
  • rs.MoveNext

複雑なVBA構造でも自動化できます。


✅ ChatGPTでADODBマクロを作るためのプロンプト設計

・もっとも基本となるプロンプト例

SQL Serverの「SalesDB」に接続し、
Customersテーブルのデータを取得してSheet1に貼り付けるADODBマクロを作ってください。
Windows認証を使用します。

ChatGPTは以下を含むコードを生成します。

  • 接続オブジェクト(ADODB.Connection)
  • Recordsetの取得(ADODB.Recordset)
  • SQL文(SELECT * FROM…)
  • Rangeに貼り付け

・接続方式を指定する

  • Windows認証
  • SQL認証(UserID/Password)
  • Accessファイル接続
  • Excelファイル接続
  • Oracle接続
  • MySQL接続

ChatGPTは接続文字列を自動で切り替えます。


✅ ChatGPTでDB接続マクロを作成するステップ

・ステップ①:接続したいDBの種類を伝える

例:

SQL Server(Windows認証)
Accessファイル(.accdb)に接続

ChatGPTはProviderを判断して正しい設定にします。


・ステップ②:DB名・テーブル名・取得したい列を伝える

例:

SalesDB の Products テーブルから ProductID, Price を取得

SQL文の生成もChatGPTが担当します。


・ステップ③:データ出力先を指定する

例:

Sheet1 の A1 から貼り付ける

貼り付け構造まで自動作成されます。


・ステップ④:エラー処理を追加させる

DB接続では接続エラーが頻繁に起きるため、ChatGPTに以下を追加指示します。

接続失敗時にエラー内容をメッセージ表示し、
安全に切断されるようエラー処理を追加してください。

ChatGPTは以下の構造を生成します。

  • On Error GoTo
  • 失敗時の MsgBox
  • conn.close
  • Set Nothing

・ステップ⑤:高速化や安全対策を依頼する

例:

RSを取得後、EOFまでループして配列に格納し、一括貼り付けにしてください。
接続とRecordsetは必ずCloseしてNothingにしてください。

ChatGPTは実務向けのコード品質に仕上げます。

参考:ChatGPTで高速化VBAを作成させる手順|重いマクロを劇的に速くするAI活用術




✅ ChatGPTが生成できるDB接続(ADODB)マクロの具体例

以下に ChatGPT が作れる代表的なADODBマクロを紹介します。


・① SQL Server に接続してデータ取得(Windows認証)

構造:

  • Provider=SQLOLEDB
  • Trusted_Connection=Yes
  • SELECT文
  • 取得したデータをシート貼り付け

実務で最も多いパターンです。


・② SQL Server(SQL認証)で接続

  • UserID / Password 指定
  • 安全性のためパスワードをロックする設定も依頼可能

・③ Accessファイル(.accdb)に接続

Provider=Microsoft.ACE.OLEDB.12.0
Data Source=C:\data\sample.accdb

ChatGPTならファイルパスの変更も柔軟。


・④ ExcelファイルをDBとして扱う(ODBC接続)

Excelのセル範囲をテーブルのように扱える特殊な方法。


・⑤ Insert / Update / Delete を実行する

データ取得だけでなく、書き込みも可能。

例:

  • 日次実績をDBへ登録
  • マスタ値を更新
  • 古いデータを削除

ChatGPTは SQL を含んだ実務向けコードを生成できます。


・⑥ パラメータ付きSQLの作成

SQLインジェクション対策として効果的。

ChatGPTは以下のようなコードも生成可能。

cmd.Parameters.Append ...
cmd.Execute

✅ ADODBマクロのよくある課題とChatGPTに依頼すべき改善点

・接続できない/プロバイダが見つからない

改善依頼例:

Providerが見つからない場合にもエラーメッセージを出してください。

・Recordsetが閉じられていない問題

必ず rs.Close と Set rs=Nothing を追加してください。

・SQLの構文ミス

SQL文を整形してわかりやすくしてください。

ChatGPTはSQL構文の修正も得意です。

・貼り付け速度の問題

配列で受け取り、一括でRangeに貼り付けるよう改善してください。

✅ ChatGPT × ADODB の実務活用事例

・実務例①:最新マスタを自動取得してExcelに反映

  • 朝のシステム起動時に最新DB値を読み込み
  • Excelマスタを自動更新
  • 手作業のミスをゼロに

・実務例②:在庫データをExcelで即時参照

  • 商品コード入力 → 自動で在庫数表示
  • ADODBでリアルタイムデータ参照
  • Excelをフロントエンドとして活用

・実務例③:集計結果をDBへ自動登録

  • 毎日の売上合計を Insert
  • ログとして残す
  • Excel × DB のハイブリッド運用

・実務例④:Excel帳票をDB情報で自動生成

  • AccessやSQL Serverのデータを読み込み
  • Excelのテンプレートに流し込み
  • 自動帳票出力

✅ まとめ:ChatGPTを使えばADODBマクロは“専門知識なしで作れる”

最後に記事内容の要点を整理します。

  • ADODBはExcelからDBへ接続する仕組みで、ChatGPTは完全に理解している
  • 接続先DB・認証方式・SQL・貼り付け先を“自然文で伝えるだけ”でマクロが完成
  • エラー処理・高速化・安全対策なども ChatGPT に依頼できる
  • SQL Server / Access / Oracle / MySQL など幅広いDBに対応
  • データ取得だけでなく Insert / Update / Delete も可能
  • Excel × DB 連携業務の自動化にとても効果的
  • ChatGPTを使えば、難易度の高いDB接続マクロも短時間で安全に実装できる

Excel業務でデータベース連携を効率化したい方は、ぜひChatGPTにADODBマクロ生成を依頼し、強力な自動化環境を構築してみてください。

    -Chatgpt×Excel活用方法, ChatGPT活用術, マクロ作成