Excel で SQL やストアド が実行出来る!

今日初めて知りました。
今まで、SQL Server Management Studio で SQL を実行してそれを Excel に貼り付けたり、Access から Excel にエクスポートしたりしてたのが、
Excel だけで実現出来るのでちょっと感動!!


事前に準備する事
DBに対して ODBC 経由で接続出来ること。(今回は、SQL Server 2008 で試しています)


実行手順 ※2003 と 2007 で多少違うかもしれません。一応 2007 で試してます
1. Excel のメニュー -> データ -> 外部データの取り込み -> その他のデータソース -> Microsoft Query を選択します。

2. 接続する ODBC データソースを選択します。

3. とりあえず何も選択せずに閉じます。

4. Microsoft Query の メニュー -> ファイル -> SQL の実行 を選択します。

5. SQL を記述し、実行を押します。

6. 実行結果が表示されます。

7. Microsoft Query の メニュー -> ファイル -> Microsoft Office Excel にデータを返す を選択します。

8. インポート先を選択します。

9. 出来あがり!

ストアドの場合は、5. SQL を記述する箇所でストアドを呼び出します。

例:

use [Test]
Exec [得意先受注金額プロシージャ]

パラメータ有りのストアドも呼び出せます。

use [Test]
Exec [当月受注検索プロシージャ] @受注年 = 2009, @受注月 = 10

当然 Excel なので、この後加工も自由に出来ます。(このデータからピボットテーブルでさらにデータを抽出したり…)
C/S 系のシステムで、外部に出さない帳票なんかは、これでもいいんじゃない?って思ってしまった。。


※多分、ORACLE とかでも出来るんじゃないかと思います。
Query を使って外部データを取り出す方法について