Excel でデータ モデルを作成する

注: 最新のヘルプ コンテンツをできるだけ早く、お客様がお使いの言語で提供したいと考えております。このページは、自動翻訳によって翻訳されているため、文章校正のエラーや不正確な情報が含まれている可能性があります。私たちの目的は、このコンテンツがお客様の役に立つようにすることです。お客様にとって役立つ情報であったかどうかを、このページの下部でお知らせください。簡単に参照できるように、こちらに英語の記事があります。

データモデルを使用すると、複数のテーブルのデータを統合し、効果的に Excel ブック内にリレーショナルデータソースを作成できます。Excel では、データモデルは透過的に使われ、ピボットテーブルやピボットグラフで使用される表形式のデータを提供します。データモデルは、フィールドリスト内のテーブルのコレクションとして視覚化され、ほとんどの場合、それがわかっているとは限りません。

データモデルの操作を開始するには、データを取得する必要があります。そのためには、[取得と変換] (power Query) エクスペリエンスを使用します。そのため、ステップバックしてビデオを視聴するか、「get & transform and Power Pivot」の学習ガイドに従う必要があります。

Power Pivot とは

取得と変換 (Power Query) はどこにありますか?

  • excel 2016 & excel for Office 365 -Get & Transform (Power Query) は、[データ] タブの excel と統合されています。

  • excel 2013 -Power Query は、excel に含まれるアドインですが、アクティブ化する必要があります。[ファイル]、[オプション]、[アドイン] の順に移動し、ウィンドウの下部にある [管理] ドロップダウンで [ COMアドイン]、[移動] の順に選びます。Microsoft Power Query for Excelを確認し、[ OK]をクリックしてアクティブにします。[ Power Query ] タブがリボンに追加されます。

  • Excel 2010 - Power Query アドインをダウンロードしてインストールします。有効にすると、 Power Queryタブがリボンに追加されます。

作業を開始する

まず、データを取得する必要があります。

  1. excel 2016、excel for Office 365 では、[ データ]、[データの取得と変換]、[データの取得]、[テキストファイル]、[excel ブック]、[web サイト]、[Microsoft Access]、[SQL Server] など、任意の数の外部データソースからデータをインポートします。複数の関連テーブルを含むリレーショナルデータベース。

    Excel 2013 および2010で、[ Power Query ]、[外部データの取得] の順に移動し、データソースを選びます。

  2. テーブルを選択するように求めるメッセージが表示されます。同じデータソースから複数のテーブルを取得したい場合は、[複数のテーブルの選択を有効にする] オプションをオンにします。複数のテーブルを選ぶと、Excel によって自動的にデータモデルが作成されます。

    注: この例では、クラスと成績について架空の学生の詳細を含む Excel ブックを使用しています。学生のデータモデルのサンプルブックをダウンロードして、フォローしていることができます。また、完成したデータモデルを使用してバージョンをダウンロードすることもできます。

    [取得と変換] (Power Query) ナビゲーター
  3. 1つまたは複数のテーブルを選択し、[読み込み] をクリックします。

    ソースデータを編集する必要がある場合は、[編集] オプションを選ぶことができます。詳細については、「クエリエディターの概要 (Power query)」を参照してください。

これで、インポートしたすべてのテーブルを含むデータモデルが作成され、ピボットテーブルのフィールドリストに表示されます。

注: 

  • 2 つ以上のテーブルを同時に Excel にインポートすると、暗黙的にモデルが作成されます。

  • モデルは、 PowerPivotアドインを使用してデータをインポートするときに明示的に作成されます。アドインでは、モデルは Excel のようなタブ付きレイアウトで表示されます。ここでは、それぞれに表形式のデータが含まれています。「 powerpivot アドインを使用してデータを取得する」を参照して、SQL Server データベースを使用してデータのインポートの基本を学習します。

  • テーブルを 1 つだけ含むモデルを作成することもできます。1 つのテーブルを基にモデルを作成するには、そのテーブルを選んで、PowerPivot の [データ モデルに追加] を選びます。これは、データセットのフィルター処理、計算列、計算フィールド、KPI、階層などの PowerPivot の機能を使いたい場合に行います。

  • プライマリ キーおよび外部キーのリレーションシップを持つ関連テーブルをインポートする場合、テーブルのリレーションシップは自動的に作成されます。Excel では、データ モデル内のテーブルのリレーションシップの基準として、通常はインポートしたリレーションシップ情報を利用できます。

  • データモデルのサイズを小さくする方法のヒントについては、「 Excel と Power Pivot を使用してメモリ効率の高いデータモデルを作成する」を参照してください。

  • 詳細については、「チュートリアル: Excel にデータをインポートする」および「データモデルを作成する」を参照してください。

ヒント: ブックにデータモデルがあるかどうかを確認する方法を教えてください。[ PowerPivot ]、[管理] の順に移動します。ワークシートのようなデータが表示される場合は、モデルが存在します。詳細については、「ブックのデータモデルで使用されているデータソースを確認する」を参照してください。

テーブル間のリレーションシップを作成する

次の手順では、テーブル間のリレーションシップを作成して、いずれかのデータを取得できるようにします。各テーブルには、主キー、または一意のフィールド識別子 (Student ID、Class number など) が必要です。最も簡単な方法は、それらのフィールドをドラッグアンドドロップして、Power Pivot のダイアグラムビューでそれらを接続することです。

  1. [ powerpivot ]、[管理] の順に移動します。

  2. [ホーム] タブで、[ダイアグラムビュー] を選びます。

  3. インポートしたすべてのテーブルが表示され、各フィールドの数に応じてサイズを変更するのに時間がかかる場合があります。

  4. 次に、1つのテーブルの主キーフィールドを次の表にドラッグします。次の例は、student 用テーブルのダイアグラムビューです。

    Power Query データモデル関係図ビュー

    次のリンクが作成されました。

    • tbl_Students |学生 ID > tbl_Grades |学生 ID

      つまり、student テーブルから成績表の学生 id フィールドに学生 id フィールドをドラッグします。

    • tbl_Semesters |セメスター ID > tbl_Grades |学期

    • tbl_Classes |クラス番号 > tbl_Grades |クラス番号

    注: 

    • リレーションシップを作成するためにフィールド名を同じにする必要はありませんが、同じデータ型である必要があります。

    • ダイアグラムビューのコネクタには、片側に "1" があり、他方には "*" が表示されています。これは、テーブル間に一対多リレーションシップがあることを意味します。これによって、データがどのように使用されるかが決まります。詳細については、「データモデルのテーブル間のリレーションシップ」を参照してください。

    • コネクタは、テーブル間にリレーションシップがあることを示します。実際には、互いにリンクされているフィールドを表示することはありません。リンクを表示するには、[ powerpivot ]、[管理]、[デザイン]、[リレーションシップ]、[リレーションシップの管理] の順に移動します。Excel では、[データ]、[リレーションシップ] の順に移動できます。

データモデルを使用してピボットテーブルまたはピボットグラフを作成する

Excel ブックには1つのデータモデルのみを含めることができますが、そのモデルには複数のテーブルが含まれているため、ブック全体を繰り返し使うことができます。既存のデータモデルには、いつでも複数のテーブルを追加できます。

  1. PowerPivotで、[管理] に移動します。

  2. [ホーム] タブで、[ピボットテーブル] を選びます。

  3. ピボットテーブルを配置する場所を選択します。新しいワークシート、または現在の場所。

  4. [ OK] をクリックすると、Excel によって、右側に [フィールドリスト] ウィンドウが表示された空のピボットテーブルが追加されます。

    Power Pivot ピボットテーブルのフィールドリスト

次に、ピボットテーブルを作成するか、ピボットグラフを作成します。テーブル間のリレーションシップを既に作成している場合は、ピボットテーブル内の任意のフィールドを使うことができます。学生データモデルのサンプルブックで既にリレーションシップが作成されています。

既存の関連しないデータをデータ モデルに追加する

モデルで使用する多くのデータをインポートまたはコピーしたが、データモデルに追加されていないとします。新しいデータをモデルにプッシュすることは、考えるよりも簡単です。

  1. まず、モデルに追加するデータ内の任意のセルを選択します。任意の範囲のデータを指定できますが、 Excel テーブルとして書式設定されたデータが最適です。

  2. 以下のいずれかの方法を使用してデータを追加します。

  3. [PowerPivot]、[データ モデルに追加] の順にクリックします。

  4. [挿入]、[ピボットテーブル] の順にクリックし、[ピボットテーブルの作成] ダイアログ ボックスで [このデータをデータ モデルに追加する] チェック ボックスをオンにします。

これで、範囲またはテーブルがリンク テーブルとしてモデルに追加されます。モデル内でのリンク テーブルの利用方法については、「Power Pivot の Excel リンク テーブルを使用してデータを追加する」を参照してください。

PowerPivotテーブルにデータを追加する

PowerPivotでは、Excel ワークシートのように新しい行を直接入力することによって、テーブルに行を追加することはできません。ただし、ソースデータをコピーして貼り付けたり、更新したり、 powerpivot モデルを再表示したりすることで、行を追加できます。

補足説明

Excel Tech Community では、いつでも専門家に質問できます。Microsoft コミュニティでは、サポートを受けられます。また、Excel User Voice では、新機能についての提案や改善案を送信することができます。

関連項目

取得と変換、powerpivot の学習ガイド

クエリ エディターの概要 (Power Query)

Excel と Power Pivot を使用して、メモリの効率的なデータモデルを作成する

チュートリアル: Excel にデータをインポートして、データモデルを作成する

ブックのデータ モデルで使用されているデータ ソースを探す

データ モデルのテーブル間のリレーションシップ

Office のスキルを磨く
トレーニングの探索
新機能を最初に入手
Office Insider に参加する

この情報は役に立ちましたか?

ご意見をいただきありがとうございます。

フィードバックをお寄せいただき、ありがとうございます。Office サポートの担当者におつなぎいたします。

×