逆境から飛躍へ 

~30代からのスキルアップ~

VBA VBAを使用してデータベースにアクセスする方法

 

 

・・・・・・ブログ村参加中!・・・・・・

ブログランキング・にほんブログ村へにほんブログ村

PVアクセスランキング にほんブログ村

応援お願いいたします!

・・・・・・・・・・・・・・・・・・・・

 

 

 皆さん、おはようございます。

 

 

 かなり久しぶりなのですが

 VBA関係について

 書いていきたいと思います。

 

 

 この業界に入ってから

 今までやったことはありませんでしたが

 自分でSQLを書いて、

 データベースを操作することも

 増えてきました。

 

 

 ただ、都度SQLを書いて

 ひとつひとつのテーブルに対して

 ツールで同じSQLを実行するのも

 面倒だなと思い、調べたところ

 VBAでもデータベースに

 アクセスすることが可能みたいですね('ω')

 

 

 今日は、そのことについて

 書きたいと思います。

 

 

 

 まずは参照設定です。

 

 

 今回は、ADO(ActiveX Data Objects)を

 使用する為に、

 VBEのタブにあるツールの

 参照設定を選択します。

 

 

 ライブラリファイルから

 「Microsoft ActiveX Data

  Objects X.X Library」を

 選択します。

 ※X.Xはバージョン部分が入ります。

 

 

 続いて、SQLServer

 接続文字列の記述方法です。

 

 Windows認証

 "Provider=SQLOLEDB;

  Data Source=サーバ名;

  Initial Catalog=データベース名;

  Trusted_Connection=Yes;"

 

 SQL Server認証

 "Provider=SQLOLEDB;

  Data Source=サーバ名;

  Initial Catalog=データベース名;

  UID=ユーザID;

  PWD=パスワード;"

 

 

 SQL Server Management Studio(SSMS)の

 ログインのときに聞かれる認証方法です。

 

 

 個人的には、SQLServer認証の方が

 馴染みがあります。

 

 

 サーバ名やデータベース名、

 ユーザID、パスワードは

 エクセルに記載して

 読み込むなり

 設定ファイルを書くなりして

 簡単に書き直せるように

 しておいた方が便利かも。

 

 

 セキュリティは低すぎるけど苦笑

 

 

 あとは、

 ADODB.Connectionと

 ADODB.Recordsetを

 使用しSQLを実行して

 データを取得することで

 いろんなことが出来ます。

 

 

 サンプルコード書こうと思いましたが

 他のサイトでも結構書かれているので

 またどこかでサンプルコード自体は

 書きたいと思います(´・ω・`)

 

 

 取得したデータを

 エクセルに張り付けたり、

 ファイルに書き出したりするものと

 組み合わせればとても便利です。 

 

 

 ただ、何十万とあるテーブルに使用すると

 かなり遅かったので

 注意する必要がありそう。

 

 

 そういうものは直接SQLたたいた方が

 早いのでそちらをおすすめします。

 

 

 それでは、またヽ(^o^)丿

 

 

高配当株関連記事 今買い増していきたい銘柄

 私が保有する高配当株おすすめ3選 - 逆境から飛躍へ

 私が保有する高配当株おすすめ第2弾(日本株)【2022年版】 - 逆境から飛躍へ

 高配当・割安成長株投資としてこちらの銘柄を購入 - 逆境から飛躍へ

 

 

 

この記事を最後まで読んで頂いて、

本当にありがとうございます!

 

ブログランキング・にほんブログ村へにほんブログ村

PVアクセスランキング にほんブログ村

 

もし、記事が参考になった、

面白かったと少しでも

感じていただくことが出来たなら、

クリックしていただけたら嬉しいです(^^)

 

応援お願いいたします!