ピボットテーブルでのリレーションシップの操作

ピボットテーブルを構築する際、従来は、テーブル間の接続が既に確立された OLAP キューブなどの複雑なデータ ソースを使用していましたが、 PowerPivot ブックでは、既存のデータ ソースへのデータの追加やテーブル間の独自の接続の構築を自由に行えるようになっています。 これによって柔軟性が高まるだけでなく、予期しない結果の原因になる関連付けられていないデータの連結も容易になります。

ここでは、必要なレポートを取得できるように、ピボットテーブルのコンテキストでリレーションシップを操作してデータを接続する方法について説明します。

ピボットテーブルの関連付けられていないデータ: 問題と解決策

ピボットテーブルを作成するときの次のような問題について考えてみましょう。 購入記録の地域別の内訳を作成しようとして、購入金額のフィールドを [値] 領域にドロップし、販売地域のフィールドを [列ラベル] 領域にドロップにしましたが、 意図した結果を得られませんでした。

DFarmer_bad_pivot

この問題の解決方法

このような問題は、ピボットテーブルに追加したフィールドは同じブックのものであっても、各列を含むテーブルが関連付けられていない場合に発生します。 たとえば、各販売地域の一覧から成るテーブルと、すべての地域の購入記録の一覧から成るテーブルがあるとします。 ピボットテーブルを作成して正しい結果を得るには、2 つのテーブルの間のリレーションシップを作成する必要があります。

リレーションシップを作成した後、ピボットテーブルで購入記録テーブルのデータを地域の一覧に正しく組み合わせると、次のような結果が得られます。

DFarmer_good_pivot

PowerPivot for Excel には、このようなリレーションシップの問題を自動的に検出して修正するための Microsoft Research (MSR) によって開発されたテクノロジが含まれています。

自動検出機能の使用

自動検出では、ピボットテーブルを含むブックに新しいフィールドを追加するとそのフィールドが確認されます。 新しいフィールドがピボットテーブルの列見出しおよび行見出しに関連付けられていない場合、ピボットテーブルの一番上の通知領域にメッセージが表示され、リレーションシップが必要かどうかが示されます。 PowerPivot は、新しいデータを分析して潜在的なリレーションシップも検出します。

メッセージを無視してピボットテーブルでの作業を続けることもできますが、[作成] をクリックすると、アルゴリズムによってデータが分析されます。 新しいデータの値、ピボットテーブルのサイズと複雑さ、および既に作成済みのリレーションシップによっては、このプロセスに数分かかることがあります。

このプロセスには次の 2 つの段階があります。

  • リレーションシップの検出。 分析が完了したら、リレーションシップ候補の一覧を確認できます。 取り消さない場合、PowerPivot は自動的に次のステップに進み、リレーションシップを作成します。

  • リレーションシップの作成。 リレーションシップが適用されると、確認のダイアログ ボックスが表示され、[詳細] リンクをクリックすると、作成されたリレーションシップの一覧を表示できます。

検出プロセスは取り消すことができますが、作成プロセスは取り消せません。

MSR アルゴリズムは、モデル内のテーブルどうしを関連付けるために "最善の" リレーションシップのセットを探します。 アルゴリズムは、列名、列のデータ型、列内の値、およびピボットテーブル内の列を考慮したうえで、新しいデータ用として可能なリレーションシップをすべて検出します。

続いて PowerPivot は、内部ヒューリスティックに基づく "品質" スコアが最も高いリレーションシップを選択します。 詳細については、「リレーションシップの概要」および「リレーションシップのトラブルシューティング」を参照してください。

リレーションシップの手動編集

自動検出で正しい結果が得られない場合は、手動でリレーションシップを編集または削除することも、新規に作成することもできます。 詳細については、「2 つのテーブル間のリレーションシップの作成」を参照してください。

注意

ピボットテーブルの構築中にリレーションシップまたは新しいデータの追加が必要になった場合は、まず PowerPivot ウィンドウに戻る必要があります。 リレーションシップを追加するか必要なデータを変更したら、Excel ブックに戻ることができます。 ただし、変更がピボットテーブルに影響する場合は、ブックを再計算する必要があります。

ピボットテーブルの空白行 (不明なメンバー)

ピボットテーブルでは関連するデータ テーブルが連結されるため、キーまたは一致する値で関連付けることができないデータがテーブルに含まれている場合は、そのデータを何らかの方法で処理する必要があります。 多次元データベースでは、一致する値がないすべての行を不明なメンバーに割り当てることで一致しないデータを処理します。 ピボットテーブルでは、不明なメンバーは空白の見出しとして示されます。

たとえば、売上を店舗別にまとめるピボットテーブルを作成するときに、店舗名が一覧に含まれていないレコードが売上テーブルに含まれている場合は、有効な店舗名がないすべてのレコードが 1 つにまとめられます。

関連項目

概念

ピボットテーブル レポートまたはピボットグラフ レポートの作成

リレーションシップのトラブルシューティング

リレーションシップの概要