2014年8月27日水曜日

excel(windows)からmysqlのデータを読み込む

引用元:http://tweeeety.hateblo.jp/entry/20130508/1368021997



ちょっとmysqlのデータをexcelで読み込みたい需要ができたのでその際の手順メモ



まずはexcelmysqlのデータを読むための大まかな流れ


    1. mysql用のODBCの入手(ODBCとは)

    2. ODBCのインストール

    3. ODBCの設定(windows7での)

    4. excelの設定



今回試した環境は
windows7
Excel 2003
Mysql5.1.42





では本題



1.ODBCの入手

mysqlのサイトからwindows番のODBCドライバをダウンロードします
http://dev.mysql.com/downloads/connector/odbc/


platformがmicrosoft windowsになってることを確認して、64bit版or32bit版のダウンロードボタンを押します
f:id:tweeeety:20130508232306p:image:w360



注意
windowsが64bit版でもexcelが32bit版の場合、32bit版を選択!!



サインアップ画面が出るのでサインアップしたりしたくない人は○で囲ったno thanksリンクからダウンロード
f:id:tweeeety:20130508232558p:image:w360





ODBCのインストール

ダウンロードしたODBCドライバをインストールします
mysql-connector-odbc-5.2.5-winx64.msiみたいな名前でダウンロードフォルダに入ると思うのでダブルクリック


↓のような画面が出るのでだいたいNextを選択して、完了までもってく。
f:id:tweeeety:20130508233233p:image:w360


よくわからなかったらtypicalを選択
f:id:tweeeety:20130508233459j:image:w360


とにかくnext的なやつで終わらせて。





ODBCの設定(windows7での)


windowsのスタートなどからコントロールパネルを開きます。
「システムとセキュリティ」を選択
f:id:tweeeety:20130509104544p:image:w360


「管理ツール」を選択
f:id:tweeeety:20130509104543p:image:w360


「データソース(ODBC)」を選択
f:id:tweeeety:20130509104542p:image:w360


ODBCデータソースアドミニストレーター」が開くので「追加」を選択します
※ユーザデータソースはこれから追加するので選択する必要はないです
f:id:tweeeety:20130509104541p:image:w360


自分のところでは「MySQL ODBC 5.2 ANSI Driver」と「MySQL ODBC 5.2 Unicode Driver」がありましたが「MySQL ODBC 5.2 ANSI Driver」を選択
f:id:tweeeety:20130509104540p:image:w360


ODBCのDSN設定画面が開くので’Data Source Name’、’TCP/IPServer’、’Port’、’User’、’Password’を入力してOKボタンで設定完了。
TCP/IP Server:Portはxamppなんかの場合はlocalhost:3306とかがデフォルトが多いですね
f:id:tweeeety:20130509104539p:image:w360



Data Source Nameはなんでも良いです。
この後のexcelの設定で使う名前的なやつです。
エクセルから設定を読み込むときの設定名として使います



OKを押す前に「Test」を押すと接続テストをしてくれます。
設定が問題なければConnection successfulと表示されます。
f:id:tweeeety:20130509104538p:image:w360





excelの設定


ここまで終わってればあとはexcelから設定したODBCを通してMySQLに接続するだけです


excelを開いたら、データを読み込みたいシートに移動します。
データ > 外部データの取り込み > データの取り込み を選択
f:id:tweeeety:20130509131810p:image:w360


データ ファイルの選択 が表示されるので「新しいソース」を選択
f:id:tweeeety:20130509131809p:image:w360


データ接続ウィザードが表示されるので「ODBC DSN」を選択
f:id:tweeeety:20130509131808p:image:w360


ODBCの設定で’Data Source Name’に設定した「MySQL」を選択
f:id:tweeeety:20130509131807p:image:w360



うまくいかないときは↓の方に追記した補足を参考に



DSN(mysqlの接続設定)設定を読み込むと、データベース一覧が表示されます
その中で表示したいデータベースを選択
f:id:tweeeety:20130509131806p:image:w360


↓はmysqlデータベースを選択した例
選択したデータベース内のテーブルが一覧表示されます
表示したテーブルを選択して次へ
f:id:tweeeety:20130509163532p:image:w360


そのテーブルデータを読み込む設定をファイルを保存します
名前は適当にきめて「完了」を押す
f:id:tweeeety:20130509163531p:image:w360


設定ファイルをどこに保存するかを選択
とくに問題なければそのままで。
次回からはその設定名を通して同じテーブルを読み込めるようになります。
f:id:tweeeety:20130509163530p:image:w360


最後は、エクセルのどこにデータを読み込むか指定
f:id:tweeeety:20130509163529p:image:w360


終わり




うまくいかないとき


↑のODBCのDSN設定で「MySQL」を選択して「次へ」で
次のような画面が出たりうまくいかない場合はダウンロードのところに書いた注意を読んでみてください


こんな画面がでる
f:id:tweeeety:20130509164748p:image:w360





田舎のIT職人 (id:wedoit)



ExcelでMySQLのデータを取得/更新するなら、ExcelDBToolをお勧めします。
データ取得、更新、削除することだけではなく、複数のSQLを実行して、結果を
一括Excelの各シートに出力することもできます。データ作成の機能を使って、
氏名、住所、電話など60種類以上のダミーデータも作成できます。
作成したデータを直接DBに登録して、シート名とテーブル名が一致すれば、
一括で複数テーブルのデータもExcelに取得できます。
詳しくは下記サイトをご参照ください。

http://www.superdbtool.com


0 コメント:

コメントを投稿