[MySQL] ExcelからデータベースにODBCで接続する方法

[MySQL] ExcelからデータベースにODBCで接続する方法MySQLへの接続
MySQLへの接続

MySQLのデータベースに、Excelから接続する方法です。

シートに取得したデータは、ブックを開くたび最新にすることも、スナップショットとして保存することもできます。普段通りピボットテーブルやグラフでの利用も可能です。

取得するデータは、Accessに良く似たツール「Microsoft Query」でデザインします。
クエリーのデザインが可能で、その結果をExcelのシート上に出力できます。

データベースは、課題管理ツール「Redmine」を例にしています。

 

スポンサーリンク

使用するODBCコネクターについて

この記事では、MySQLのネイティブなODBCドライバーを使用しています。
ただ最近のバージョンは、相性の問題からか、AccessやExcelからは上手く機能しないケースが見受けれます。インストールする場合は、次の記事を参考にしてください。

 

現時点では、互換モードになりますがMariaDBのODBCコネクターがお勧めです。
ランタイム環境が不要な上、MySQLのODBCコネクターとの併存も可能です。
インストール方法については、次の記事を参考にしてください。

 

Microsoft Queryの起動

Excelを起動して、リボンの「データ」を表示します。
「その他のデータソース」から「Microsoft Query」を選択します。

 

データソースの作成

Microsoft Queryが起動します。
「クエリウィザードを使ってクエリを作成/編集する」をオフにしておきます。
「新規データソース」を選択して「OK」をクリックします。

 

新規データソース名を入力します。
ドライバーには「MySQL ODBC」を選択して「接続」をクリックします。

 

MySQL Connector/ODBCが起動します。
サーバー名とアカウント情報を入力して「Test」をクリックします。

 

Bitnami Redmine Stackをインストールした場合のMySQL管理者のID及びそのパスワードについていは、次の記事を参考にしてください。

Bitnami Redmine StackのMySQL初期設定について
Bitnami Redmine Stackをインストールすると、データベースのMySQLもあわせてインストールされます。MySQLの初期設定は次のようになっています。…続きを読む >

 

接続できると、次のようなメッセージが表示されます。
「OK」をクリックして閉じます。

 

「Database」のプルダウンメニューにデータベースの一覧が表示されます。
接続するデータベースを選択して「Details」をクリックします。

 

「Metadata」タブを表示します。
「Don't use INFORMATION_SCHEMA for metadata」にチェックを入れて「OK」をクリックします。

 

3.の「接続」をクリックします。
もう一度ODBCの画面が表示されるので「OK」をクリックします。

 

接続できると、4.にテーブルの一覧が表示されるので、取得するテーブルを選択します。
パスワードなど保存して大丈夫な場合は「~保存する」にチェックを入れて「OK」をクリックします。

 

警告が表示されるので、大丈夫な場合は「はい」をクリックします。

 

データソースの選択

作成したばかりのデータソースが表示されています。
選択して「OK」をクリックします。

 

クエリの作成

Accessの簡易版のようなMicorosoft Queryの編集画面が表示されます。
テーブルから抽出したいフィールドをドラッグして、下の枠にドロップします。
*(アスタリスク)をドラッグ&ドロップすると全フィールドを指定できます。

 

下の枠に、データがプレビュー表示されます。
「作成中のクエリでは、このようなデータになりますよ」ということを示しています。

 

今回は単純にこのまま抽出しますが、別のテーブルを追加して関連するフィールドからも抽出するような条件も設定できます。

クエリーが完成したら、左から4つ目の「データを返す」をクリックします。

 

データのインポート

データのインポート方法を選択する画面が表示されます。
今回は、Excelのテーブルとしてインポートします。
内容を確認して「OK」をクリックします。

 

次のように、テーブルのデータがインポートできました。
Excelのテーブルになっているので、ハッシュ(縞模様で)表示されています。

 

ブックを開くたび最新データを取得

このブックを開くたびに、最新のデータを取得するように設定してみましょう。
「データ」のリボンから「接続」をクリックします。

 

接続の一覧が表示されます。
設定を変更する接続を選択して「プロパティ」をクリックします。

 

接続のプロパティが表示されます。
「ファイルを開くときに~」にチェック入れて「OK」をクリックします。

 

ODBCが起動するので、パスワードを入力して「OK」をクリックします。

 

再度、データのインポート(更新)が実行されます。
終了したら、ブックの接続の「閉じる」をクリックして、ダイアログを閉じます。

 

自動更新の確認

ブックを開くと自動更新されるか、実際に確認してみます。

名前をつけて保存したら、ブックを一度閉じます。
保存したブックをダブルクリックで開いてみます。
警告が表示された場合は「コンテンツの有効化」をクリックします。

 

ODBCが起動するので、パスワードを入力して「OK」をクリックします。

 

自動更新が始まり、ステータスバーに状況が表示されます。
無事更新が終わると、通常の状態に戻ります。

 

最後までご覧いただきありがとうございます。
では、また。

 

 

スポンサーリンク
A1 Style