web-dev-qa-db-ja.com

Excelピボットテーブル、同じ列のフィールド間の違い

アカウント名は同じですが、年が異なるテーブルがあります(以下のサンプル)。同じアカウント名の年の差を計算するピボットアイテムフィールドを作成したい

アカウント名年額
アカウント12014 15000 
アカウント12015 20000 
アカウント22014 30000 
アカウント22015 60000 

したがって、勘定科目1の差は5Kで、勘定科目2の差は30Kです。金額が同じ列に属し、年ごとにしか区別できない場合、2つのフィールドの差を取得するにはどうすればよいですか?

金額列ラベルの合計

 
行ラベル20142015総計
アカウント115000 20000 35000 
アカウント230000 60000 90000 
総計4500080000 125000 
 

変更列の上位40ベースを取得したいので、変更をピボットテーブルの一部にする必要があります。

金額列ラベルの合計


アカウント。 20142015変更 アカウント230000 60000 30000 アカウント115000 20000 5000 総計4500080000 35000
3
GC10

私が入手できる最も近いピボットテーブルは次のとおりです。

ROWS: Account Name
COLS: Year
VALUES: Amount

次に、値の1つを右クリックして、[値として表示]を選択します。これをデフォルトの「計算なし」から「差元」に変更し、Base Fieldを「年」、Base Item(previous)にします。

これで完了ですが、元のデータも表示したい場合は、もう一度amountVALUESに追加し直す必要があります。見出しを微調整すれば完了です。

更新:別のアプローチは、次の式を使用してソースデータに別の列を追加することです(ソースデータをExcelテーブルとしてフォーマットし、アカウント/年で並べ替えたと仮定します)。

=IF([@Account]=R[-1]C1, IF(ISNUMBER(R[-1]C), [@Amount]-R[-1]C3, 0), 0)

これは、データに欠落している年がない場合にのみ機能します。ただし、その列に上位10個のフィルターを適用すると、それに応じてピボットテーブルの表示が変更されます。

2
Julian Knight
  • 最初に行領域をクリックします。これは非常に重要です。これに気付かなかったので、ピボットテーブルを5年間使いやすくしました。

  • フィールドアイテムとセットをクリックし、「アイテム」を選択します。 'formula 1'として表示され、その下に式が表示されます。下のボックスには、フィールド名があり、右側に値が2014と2015のボックスがあります。

  • 式フィールドで、基準年をクリックし、「-」を追加してから、移動年(つまり、2015〜2014)をクリックします。

  • 次に、行ラベルの下部に行が追加され、独自に選択できます。

0
frank