エンド ユーザーが表示できるように、SQL Server データベースからいくつかのレポートを作成する必要があります。
ExcelからSQLサーバーにフックすることは可能ですか?
更新 エンド ユーザーはファイルをクリックしてレポートを表示するだけです。
エンド ユーザーが表示できるように、SQL Server データベースからいくつかのレポートを作成する必要があります。
ExcelからSQLサーバーにフックすることは可能ですか?
更新 エンド ユーザーはファイルをクリックしてレポートを表示するだけです。
はい、それは間違いなく、お使いの Excel のバージョンによって異なります。2007 では、[データ] タブから [外部データの取得] に移動すると、SQL を含むさまざまなデータ ソースに接続するための多くのオプションが表示されます。
私が使用するソリューションは次のとおりです 。 http://mikesknowledgebase.com/pages/SQLServer/RunStoredProcedureFromExcel.htm
基本的に、VBA を少し使用してストアド プロシージャを呼び出し、結果を Excel ファイルに表示します。
これは、ASP.Net アプリに画面を追加したり、アプリケーションの新しいバージョンを再デプロイしたりせずに、アドホック レポートをユーザーに提供したい場合によく使用します。
確かに -- Excel 2007 では、[データ] タブ、[接続] の順にクリックし、[参照] をクリックして [+NewSqlServerConnection.odc] を選択します。
2007年には、[データ]タブに移動して、[外部データの取得]に移動できます。SQL Server、Webページ、Accessなど、多くのソースからデータを収集できます。
接続後、データを更新するオプションがあります。
Excelシートを閉じるときにデータを削除することもできます。
VBA を使用してデータベースに接続し、データをインポートできます。ユーザーはファイルを開くだけで済みます。VBA コードは、データの取得とフォーマットを行います。
エンド ユーザーの技術的な要件がないようにしたい場合は、Excel ファイルからサーバーに直接リンクするよりも、エクスポート プロセスの方がはるかに優れた方法です。
接続情報を保存することはできますが、接続情報を台無しにする可能性があります。設定を信頼できない場合は、データを抽出して静的コピーを作成するのが最善の方法です。
最も簡単で最も古い方法は ODBC を使用することですが、VBScript を使用すると何でも可能です。
データを希望どおりに表示するビュー (または単なるクエリ) を作成してから、DTS (SQL 2000) または SSIS (SQL 2005) を使用して、Microsoft Excel ODBC ドライバーを使用して情報をエクスポートすることをお勧めします。