ExcelフロントエンドからSQL Serverへ

一般的なユーザーはMicrosoft Excelで快適に作業できます 。 ユーザーに既知のツールを提供し、 SQL Server環境への接続を追加しないでください。 このアプローチの利点は、Excelスプレッドシートがバックエンドデータベースの最新データで常に最新のものであることです。 ユーザーがExcelにデータを入力するのが一般的ですが、通常はある時点のデータのスナップショットです。 この記事では、ユーザーに提供できるSQLへの接続を使用してExcelスプレッドシートを構成することがいかに簡単かを示します。

この例では、MicrosoftがSQL Server 2008と共に出荷するAdventure Worksサンプルデータベースを使用します。

難易度:平均

所要時間: 10分

ここでの方法

  1. ExcelからSQL Serverへの接続を設定するには、いくつかの情報が必要です。
      • SQL Server名 - この例では、SQL ServerはMTP \ SQLEXPRESSです。
  2. データベース名 - この例では、AdventureWorksデータベースを使用しています。
  3. テーブルまたはビュー - Sales.vIndividualCustomerというビューを見ていきます。
  4. Excelを開き、新しいワークブックを作成します。
  5. [データ]タブをクリックします。 "外部データの取得"オプションを探し、 "他のソースから"をクリックし、 "From SQL Server"を選択します。 「データ接続ウィザード」が開きます。
  6. サーバー名を入力します。 この例では、サーバー名は「MTP \ SQLEXPRESS」です。 ログイン資格情報を「Windows認証を使用する」に設定します。 もう1つのオプションは、データベース管理者がユーザーのユーザー名とパスワードを提供した場合に使用されます。 次へをクリックします。 「データ接続ウィザード」が表示されます。
  7. 「希望のデータを含むデータベースを選択」ドロップダウンボックスからデータベース(この例では「AdventureWorks」)を選択します。 [特定のテーブルに接続する]がオンになっていることを確認します。 リストからビュー(この例では "Sales.vIndividualCustomer")を探して選択します。 [完了]をクリックすると、[データのインポート]ダイアログボックスが表示されます。
  1. [テーブル]チェックボックスをオンにして、データを配置する場所(既存のワークシートまたは新しいワークシート)を選択します。 [OK]をクリックすると、Excelリストが作成され、表全体がスプレッドシートにインポートされます。
  2. スプレッドシートを保存してユーザーに送信します。 この手法の素晴らしい点は、ユーザーが必要なときにいつでも最新のデータにアクセスできることです。 データがスプレッドシートに保存されている間は、SQLデータベースに接続されています。 いつでもスプレッドシートをリフレッシュするには、テーブルのどこかを右クリックし、[テーブル]をクリックしてから[リフレッシュ]をクリックします。 それでおしまい。

ヒント

  1. ユーザーがSQL Serverで適切にセットアップされていることを確認することが非常に重要です。 これは、このテクニックを使用するほとんどの場合に問題を引き起こすものです。
  2. 接続先のテーブルまたはビューにあるレコードの数を確認します。 テーブルに100万レコードがある場合は、これをフィルタリングすることができます。 あなたがやりたい最後のことは、SQL Serverをハングすることです。
  3. [接続のプロパティ]ダイアログボックスには、[ファイルを開くときにデータを更新する]というオプションがあります。 このオプションのチェックを検討してください。 このオプションをオンにすると、Excelスプレッドシートを開くときに常に新しいデータセットが表示されます。
  4. ピボットテーブルを使用してデータをサマライズすることを検討してください。

あなたが必要なもの