PowerPivot の数式を再計算する

重要:  この記事は機械翻訳されています。機械翻訳についての「免責事項」をお読みください。この記事の英語版を参照するには、ここをクリックしてください。

Power Pivot でデータを操作していると、ソースから取得したデータを更新したり、計算列に作成した式を再計算したり、ピボットテーブルに表示されるデータが最新データであることを確認したりすることが必要になる場合があります。 

ここでは、データの更新と データの再計算の違い、再計算がどのように開始されるかの概要、および再計算を制御するためのオプションについて説明します。

データの更新と再計算について

Power Pivot では、データの更新と再計算の両方が行われます。

データの更新とは、外部データ ソースから最新データを取得することです。外部データ ソースで発生した変更が Power Pivot によって自動的に検出されることはありませんが、データは Power Pivot ウィンドウから手動で更新できます。また、SharePoint 上でブックが共有されている場合は自動的に更新されます。

再計算とは、ブック内の数式を含むすべての列、テーブル、グラフ、およびピボットテーブルを更新することです。数式の再計算にはパフォーマンスの代償が伴うため、各計算に関連する依存関係を理解しておくことが大切です。

重要: ブック内の数式の再計算が済むまでは、ブックの保存や発行を行わないでください。

手動再計算と自動再計算

Power Pivot の既定では、処理に必要な時間を最適化する際に、必要に応じて自動的に再計算が実行されます。再計算には時間がかかる可能性がありますが、再計算時に列の依存関係がチェックされ、列が変更されている場合、データが無効である場合、または以前は動作した数式でエラーが発生するようになった場合に通知を受け取ることができるため、重要なタスクです。 ただし、特に複雑な数式や大規模なデータセットを操作していて、更新のタイミングを制御することが必要な場合、 検証を行わずに、計算の更新だけを手動で行うことができます。

手動モードと自動モードはどちらにもメリットがありますが、自動再計算モードを使用することを強くお勧めします。このモードでは、Power Pivot  のメタデータの同期が維持され、データの削除、名前やデータ型の変更、または依存関係の欠落による問題を回避できます。 

自動再計算の使用

自動再計算モードの使用時に、式の結果に影響を及ぼす変更がデータに対して行われた場合、式を含んでいる列全体の再計算が発生します。次のような変更がある場合は、数式を再計算する必要があります。

  • 外部データ ソースの値が更新された。

  • 数式の定義が変更された。

  • 数式内で参照されているテーブルまたは列の名前が変更された。

  • テーブル間のリレーションシップが追加、変更、または削除された。

  • 新しいメジャーまたは計算列が追加された。

  • ブック内の他の数式に対する変更が行われたため、その計算に依存している列または計算を更新する必要がある。

  • 行が挿入または削除された。

  • データ セットを更新するクエリの実行を必要とするようなフィルターを適用した。フィルターは式の中で適用されている場合もあれば、ピボットテーブルまたはピボットグラフの一部として適用されている場合もあります。

手動再計算の使用

手動再計算を使用すれば、きちんと準備が整うまで、数式の結果を計算するという代償が発生するのを避けることができます。手動モードは、以下のような状況で特に便利です。

  • テンプレートを使用して数式を設計しており、数式を検証する前に数式で使用される列とテーブルの名前を変更したい。

  • ブック内の一部のデータが変更されたことがわかっているが、変更されていない別の列を操作しているので、再計算を延期したい。

  • 複数の依存関係を持つブックを操作しており、必要な変更がすべて完了するまで再計算を延期したい。

ブックが手動計算モードに設定されていると、Power Pivot in Microsoft Excel 2013 による数式の検証やチェックは一切実行されません。その場合、次のような状況が生じます。

  • ブックに新たに追加した数式には、エラーの存在を示すフラグが設定されます。

  • 新しい計算列に結果が表示されません。

ブックを手動再計算するように構成するには

  1. Power Pivot] で [デザイン] をクリックして >計算>の計算オプション]>手動計算モードです。

  2. すべてのテーブルを再計算するには、[計算オプション]、[今すぐ計算] の順にクリックします。

    ブック内の数式にエラーがないかチェックされ、更新があれば、結果でテーブルが更新されます。データの量と計算の数によっては、ブックがしばらくの間応答しなくなる場合もあります。

重要: ブックを発行する場合は、その前に必ず計算モードを自動に戻してください。これは、数式を設計する際に問題が発生するのを防ぐのに役立ちます。

再計算のトラブルシューティング

依存関係

ある列が他の列に依存しており、他の列の内容に何らかの変更が行われた場合、関連付けられているすべての列の再計算が必要になる可能性があります。Power Pivot ブックに変更が加えられた場合は、Power Pivot in Microsoft Excel 2013 によって既存の Power Pivot  データの分析が行われ、再計算が必要かどうかが決定されます。さらに、できるだけ効率のよい方法で更新が行われます。

たとえば、販売製品ProductCategoryは、テーブルに関連するテーブルSalesテーブル内の数式は、他のテーブルの両方に依存します。製品またはProductCategoryのいずれかのテーブルに何か変更には、再計算するSalesテーブルで集計列のすべてが発生します。これは、カテゴリ別または製品別に売上を重ね数式があることを検討するときに意味です。結果が正しいことを確認したがって、データに基づく数式を再計算する必要があります。

Power Pivot は常に、テーブルの完全な再計算を行います。変更された値がないかどうかを確認するよりも、完全な再計算を行う方が効率的であるためです。 再計算を発生させる変更には、列の削除、列の数値データ型の変更、新しい列の追加などの大きな変更があります。ただし、列の名前の変更のような一見小さな変更によっても再計算が発生する場合があります。これは、列の名前が数式で識別子として使用されるためです。

場合によっては、 Power Pivotと列を再計算から除外することを判断します。たとえば、 Salesテーブルが変更されている列は、 [数量]商品] テーブルから[製品の色]などの値を検索する数式がある場合、数式がセールス部門や製品のテーブルが関連している場合でも再計算する必要はありません。ただし、売上 [数量]に依存する数式がある場合は、再計算が必要です。

依存列の再計算シーケンス

再計算の前には、依存関係が計算されます。互いに依存している複数の列がある場合、Power Pivot は依存関係の順序を追跡します。このため、正しい順序で高速に列が 処理されます 。

トランザクション

データを再計算または更新する操作は、トランザクションとして発生します。これは、更新操作の一部が失敗した場合には、残りの操作が元に戻されるということを意味します。これにより、データが部分的に処理された状態で残されることがなくなります。トランザクションをリレーショナル データベースで行うのと同じように管理したり、チェックポイントを作成したりすることはできません。

揮発性関数の再計算

NOW、RAND、TODAY などの一部の関数は、固定値を持ちません。パフォーマンスの問題が生じるのを避けるために、このような関数は、計算列の中で使用されている場合には、通常、クエリの実行やフィルター処理によっては再評価されません。これらの関数の結果が再計算されるのは、列全体が再計算される場合だけです。これが発生する状況としては、外部データ ソースからの更新、これらの関数を含む数式の再計算を開始させるようなデータの手動編集などがあります。ただし、NOW、RAND、TODAY などの揮発性関数は、それが計算フィールドの定義で使用されている場合には常に再計算されます。

注: 機械翻訳についての免責事項: この記事の翻訳はコンピューター システムによって行われており、人間の手は加えられていません。マイクロソフトでは、英語を話さないユーザーがマイクロソフトの製品、サービス、テクノロジに関するコンテンツを理解するのに役立てるため、こうした機械翻訳を提供しています。記事は機械翻訳されているため、用語、構文、文法などに誤りがある場合があります。

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

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

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

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

×