ピボットテーブルですべての行を表示させたい

午前1:

・Amazon プライムデーでお買い物、キャンペーンエントリー

・相談「Wordで作ったチラシ、もっといい感じにしたい」

→文字と画像のジャンプ率を上げるて改善。

 

午後1:

・相談「Power Pointで作ったスライドショー、音楽がアニメーションと一致しない」

→アニメーションの順序が違っていた、アニメーションウインドウで確認し修正。

 

午後2:

・Excel「列・行の操作、ページ設定」

・相談「ピボットテーブルでデータのない行を表示させたい」

 

 

 

唐突ですが、皆さん「ピボットテーブル」ってご存じですか?

ピボットテーブルとは、Excelの機能で、

上のようなデータをもとに…

こんな集計を一瞬で行ってくれる便利機能です。

 

作るための操作は非常に簡単で、

  1. 元となる表の任意のセルを選択
  2. [挿入]タブをクリック
  3. 「テーブル」グループの「ピボットテーブル」をクリック
  4. 必要に応じて設定を変更し「OK」をクリック

します。

するとウインドウ右側に「ピボットテーブルのフィールド」が表示されるので、

上の項目を下の表示させたい位置へドラッグします。

今回の表であれば

  1. 「No.」を列へ
  2. 「年月日」を行へ
  3. 「値」を値へ

ドラッグします。

そうするともうこれだけで集計表が作れるというものです。

ただし、今日の質問にはこの先がありました。

 

上の例でいうと第2四半期のうち、

「5月」は該当するデータがないため行がありませんが、

データはなくてもよいので、行を表示させたいという相談ですね。


これ、結論から言うとピボットテーブルでは作れません。

代わりに「Sumifs関数」という関数で解決できます。

 

Sumifs関数は「複数の条件を満たす場合のみ合計する」という関数です。

今回の場合であれば、

  1. 年が「2021年」
  2. 月が「5月」
  3. No.が「A」

というような複数の条件を満たした場合に値を合計する、という考え方です。

 

ピボットテーブル機能を使うのであれば集計表を作る必要はありませんが、

Sumifs関数の場合は以下のような表をあらかじめ作成しておく必要があります。

あらかじめ作りたい表の形状が明確にイメージできているときは、

Sumifs関数を使ったほうがむしろ早かったりします。

社会人経験があればこのパターンのほうが多いはずです。

 

そして元データにわかりやすいように「年」と「月」の列を追加します。

もちろん中のデータはYaer関数とMonth関数を使って年月日をもとに算出しています。

これで下準備は整いました。

あとは集計表の一番左上に正しく計算式を入力し、オートフィルでコピーすれば、

すべての条件に合った合計が求められます。

▲Sumifs関数で集計した結果。当然「0」の行も表示される

▲「元データ」シート

 

集計表の「D4」に入る計算式は、

  • =SUMIFS(元データ!$D:$D,
    元データ!$E:$E,$B$2,
    元データ!$F:$F,$C4,
    元データ!$B:$B,D$2)

となります。

 

ちょっと細かく解説すると、

となっております。

(「$」の説明は割愛しますよ。理解していること前提で書いてます。)

 

なのでこれ、B2の「2021」の数字を変えれば、

過去や未来の数字も一瞬で表示することができます。

 

結局ピボットテーブルはSumifs関数を知らない人向けに簡略化された機能とも言えますね。

今回みたいに自分のイメージする表にならないときはちょっと頑張って関数に挑戦してみましょう。