shikumika’s diary

日々の事務作業で手間なことを簡単にできる仕組み(自動化、方法など)、困ったことの解決方法を調べた備忘録

【Excel】ピボットテーブルで元データ範囲の設定変更を省力化する方法

Excelのピボットテーブルで、元データ範囲(データソース)の設定変更を省力化する方法です。

ピボットテーブルの作成時、元データ(データソース)にデータを追加し、設定したセル範囲を超える場合、「データソースの変更」が必要になります。

元データの更新頻度が多いなど、「データソースの変更」が手間な場合は、範囲を「列」で指定や「テーブル」で指定することを検討します。

内容:

「データソースの変更」の基本

ピボットテーブルの作成後、データソースを変更する基本は次のとおりです。

  1. 作成したピボットテーブル内のいずれかのセルを選択
  2. リボンの「ピボットテーブル分析」-「データソースの変更」をクリックし、セル範囲またはテーブルを指定する

「ピボットテーブル分析」タブに「データソースの変更」がある

「ピボットテーブル分析」-「データソースの変更」画面

元データ範囲の変更を省力化する範囲指定の方法

1.範囲を「列」で指定

(1)セル範囲を列で指定

セル範囲を列で指定します(例:$A$1:$F$2000ではなく、$A:$Fとする)。

なお、前提として1行目にタイトルがあり、一つのシートに一つの表(リスト)にします。

このように範囲を「列」で指定しておくと、行のデータ追加時に「データソースの変更」は不要です。

また、Excelの利用者が「テーブル」に抵抗がないのであれば「範囲を「テーブル」で指定」の方が良いと思います。

範囲を$A:$Fと列で指定している

範囲を「列」で指定するイメージ

 

(2)列の追加時

列を追加したい場合は、冒頭の「データソースの変更」で修正するか、元データ範囲内に列を挿入すると指定したセル範囲も拡大します。下図は、$A:$Fで範囲を指定していた場合、F列の前に列を挿入するイメージです。範囲拡大後、列の順番を変更したい場合はコピー等で変更します。

同じ元データ範囲で複数のピボットテーブルがある場合はこの方法が効率的です。

 

指定していた列範囲の中に列を挿入します

列を挿入のイメージ

2.範囲を「テーブル」で指定

(1)データ範囲を「テーブル」に変換

データ範囲を選択肢、「挿入」-「テーブル」をクリックします。

データ範囲を選択肢、「挿入」-「テーブル」をクリック

データ範囲を「テーブル」に変換例
(2)「テーブル」で指定

ピボットテーブルの範囲指定時、テーブルにした範囲を選択すると、次のようにテーブル名で指定できます。

テーブルで指定することで、テーブルの範囲が元データの範囲となります。「データソースの変更」ではなく、テーブルの範囲変更でデータ範囲を指定します。

「テーブル」は便利な機能ですが、数式が構造化参照になるなど、使い慣れていないと戸惑いを感じることも多いので、不慣れな人への考慮も必要です。

セルの範囲を選択して指定すると、設定内容はテーブル名になる

「テーブル」で範囲指定のイメージ

以上、Excelのピボットテーブルで元データ範囲の設定変更を省力化する方法でした。