Excel(エクセル)のGETPIVOTDATA関数の使い方|ピボットテーブルからデータ取得
ピボットテーブルをより便利に活用するための関数GETPIVOTDATAの使い方を初心者にも分かりやすく図解しています。
使用関数:GETPIVOTDATA
GETPIVOTDATA(ゲットピボットデータ)関数とは?
Excelのピボットテーブルはデータベースから切り口の異なる集計表を素早く作成できる便利機能で、GETPIVOTDATAはこのピボットテーブルのデータを抜き出すための関数です。
ピボットテーブルもGETPIVOTDATAも難しいし、よく解らないと食わず嫌いになっている人は結構多いと思います。ですが、一度コツを呑み込んでしまうと案外手軽に操作できることに気付くはずです。膨大なデータベースから魔法のように様々なクロス表を作ってくれるピボットテーブルは作業効率を格段に上げてくれます。そして、GETPIVOTDATA関数はピボットテーブルで作成した集計表の更に細かいデータを参照するのに手軽に使えます。
ピボットテーブルで集計表を作成
取り敢えずピボットテーブルで集計する手順を簡単に説明しておきます。
ピボットテーブルで集計する元表の任意のセルを選択して、「挿入」タブの左端にある「ピボットテーブル」をクリックします。
「テーブルまたは範囲からのピボットテーブル」ダイアログが開いたら、「テーブル/範囲」に表のセル範囲、またはテーブル名か範囲に定義した名前が表示されているのを確認してEnterを押します。
画面の右側に「ピボットテーブルのフィールド」作業ウィンドウが開きます。
チェックボックスの付いたフィールド名(列項目)の一覧があり、下部には「フィルター」「列」「行」「値」の4ボックスがあります。
この内、「列」「行」「値」のボックスにフィールド名をドラッグして集計する項目を指定します。
例えば「日付ごとの売上データを集計」したいのでフィールド「日付」を「行」ボックスにドラッグドロップし、更に「メニューごとの売上データを集計」したいのでフィールド「メニュー」を「列」ボックスにドラッグドロップします。最後に集計する数値の「合計」フィールドを「値」ボックスにドラッグドロップして指定が完了します。
ピボットテーブルが作成されました。行ラベル・列ラベルを適宜書き換えて、必要ならデザインを変更します。
ピボットテーブルはフィールドを「行」「列」ボックスに追加すれば、もっと複雑な集計表も作れます。ピボットテーブルの作成・編集・分析に関わる詳細はこちらから
GETPIVOTDATA関数を自動で簡単に入力する方法
ピボットテーブルで集計表を作成したら、集計値をGETPIVOTDATA関数で取得してみましょう。GETPIVOTDATA関数の入力はとても簡単です。
ここでは「2月1日の総計」を取り出すことにして、取得した値を表示させるセルに「=」を入力します。
続けて、カットの総計のF5セルをクリックするだけで自動的にGETPIVOTDATA関数が入力されます。
「2月1日の総計」が取得できました。
GETPIVOTDATA関数の引数と書式
GETPIVOTDATA関数をダイアログで組み立て、引数を確認してみましょう。
「数式」→「関数ライブラリ」→「検索/行列」からGETPIVOTDATAを選択します。
GETPIVOTDATA関数の書式の構成はこうなります。「データフィールド」と「ピボットテーブル」が必須、後は任意です。
第一引数「データフィールド」
取得するデータのフィールド名を文字列で指定します。この例では「”合計”」と入力します。
第二引数「ピボットテーブル」
データを取得するピボットテーブルを指定します。セル及びセル範囲を参照することも可能で、その場合はF4キーで絶対参照にしておきます。この例ではピボットテーブルの最初のセルをクリックで指定します。
ここまでが必須の引数で、この時点で数式を確定させるとピボットテーブル右下にある「データ全体の総計」が取得されます。
ここからの引数は「フィールド」と「アイテム」のセットを指定していくことになります。更に細かい集計データを取得する場合の指定です。 取得する詳細データのフィールド名を文字列かセル参照で指定します。この例では「フィールド1」にセル参照で指定します。 取得する詳細データのアイテム名(フィールドに属する項目名)を文字列かセル参照で指定します。この例では「アイテム1」にセル参照で指定します。
第三引数「フィールド」
第四引数「アイテム」
GETPIVOTDATA関数で、より詳細な集計データが取得できました。 複数の「フィールド」と「アイテム」のセットを指定することで、集計行と集計列のクロスした位置の集計データを取得できます。 集計行は「日付」フィールド配下に「2月1日~2月5日」のアイテムが並び、集計列には「メニュー」フィールド配下に「カット、カラー・・・」などの4アイテムが並んでいます。 「日付」のアイテムの一つ「2月2日」と「メニュー」のアイテムの一つ「カラー」が交差する位置のデータを取得します。「2月2日のカラーの売上合計」を取得するということですね。 GETPIVOTDATA関数のダイアログを以下のように指定します。 「2月2日」と「カラー」の複数条件でデータが取得できました。 GETPIVOTDATA関数をピボットテーブルとは別のシートに入力する場合、第二引数「ピボットテーブル」はシート名付きで指定する必要があります。 例えば、Sheet2にあるピボットテーブルのA2セルを第二引数「ピボットテーブル」に指定するなら、「Sheet2!$A$2」と記述します。 元データが変更されても、直ちにGETPIVOTDATA関数が自動更新されるわけではありません。ピボットテーブルを更新することで、GETPIVOTDATA関数も更新されます。 ピボットテーブルのセルを選択すると「ピボットテーブル分析」タブが出現します。これをクリックして「データ」グループの「更新」→「すべて更新」をクリックします。 元データを変更した時はピボットテーブルの更新も行って最新の状況を反映させておきましょう。 GETPIVOTDATA関数を自動入力する際にうまく動作しない、ピボットテーブルの元表を変更したらエラーが表示された、など不具合が生じた場合の要因と対処法です。 GETPIVOTDATA関数で取得できるのは集計値だけです。フィールド名やラベル名を取得しようとしてもセル番地が参照されるだけでGETPIVOTDATA関数は動作しません。 ピボットテーブルの元表のフィールド名を変更し、ピボットテーブルを更新すると、GETPIVOTDATA関数には#REF!エラーが表示されます。 この場合はまず、ピボットテーブルのフィールド名を元表と一致させます。「ピボットテーブルのフィールド」のボックスにドロップされたフィールド名をクリックして展開するプルダウンから「フィールドの設定」をクリックしてダイアログを開き、元表と一致した名義に変更します。 GETPIVOTDATA関数の該当するフィールド名を数式バーで修正するか、数式の入ったセルを選択した状態で「関数の挿入」ボタンを押してダイアログを開き、修正します。 このように、フィールド名の変更はピボットテーブルにもGETPIVOTDATA関数にも影響が大きく、修正に手間がかかります。できれば慎重に行って下さい。GETPIVOTDATA関数の数式を組み立てる時も、フィールド名を正確に入力しないとエラーになります。
複数の条件を指定してGETPIVOTDATA関数でクロス位置のデータを取得する
別シートにGETPIVOTDATA関数とピボットテーブルを置く場合の指定
ピボットテーブルの元データの変更とGETPIVOTDATA関数の更新
GETPIVOTDATA関数の不具合やエラー
GETPIVOTDATA関数の自動入力ができない
フィールド名の変更でエラーが表示された
- GETPIVOTDATAはピボットテーブルから集計値を取り出す関数です
- セルに=を入力後、ピボットテーブルの集計値のセルをクリックすればGETPIVOTDATA関数は自動で入力できます
- GETPIVOTDATA関数の必須の引数「データフィールド」「ピボットテーブル」だけ指定すると右下端の総計が返ります
- GETPIVOTDATA関数で細部のデータを取得する場合は任意の引数「フィールド」「アイテム」をセットで条件指定します
- 「フィールド」「アイテム」の条件を複数指定することでクロス位置の集計値が取得できます
- ピボットテーブルの元の数値データを変更した時はピボットテーブルを更新します。それに連動してGETPIVOTDATA関数も更新されます
- GETPIVOTDATA関数で取得できるのは集計値だけで、フィールド名やラベル名を取得しようとしても動作しません
- ピボットテーブルの元表のフィールド名を変更すると、GETPIVOTDATA関数の結果はエラーになります