柔軟に働き方を選ぶ時代に必要なこと >>

添付画像のピボットテーブルから、アメリカ、中国、タイそれぞれの出荷高合計、出荷予定合計、カウント合計を下の空いているスペースに書きたい出したいです。
getpivotdata関数を使うと思いネットで式を調べても、フィールドやらアイテムやらこのテーブルのなかでどれがそれらにあたるのか理解できません。試しに式をいくつか書いてみてもどれもエラーで正しく答えが出せずにいます。
ちなみに「東京、大阪、名古屋」などのフィールド名は「支店」、「アメリカ、中国、タイ」などのフィールド名は「出荷先国」です。
よろしくお願いします。

「ピボットテーブルから合計データの抽出」の質問画像

このQ&Aに関連する最新のQ&A

A 回答 (2件)

貴女がアップされているピボットテーブルの場合ですと、GETPIVOTDATA関数を使用することは出来ませんので、この場合は普通にSUMIF関数を使い以下の式で対処します。


セルC22に =SUMIF($A$4:$A$17,$B22,B$4:B$17) と入力し下方向と右方向へ式をオートフィルコピーします。
合計の所はセルC22~E25までを範囲選択しオートSUMのボタンを押して一気に合計を出すことが出来ます。

また、セルB22~B25のような感じでそれぞれの集計を取りたいのでしたら、「出荷先国」フィールドはピボットフィールドの「行」に配置し、「列」には「支店」「出荷予定」「カウント」を配置し、「値」のフィールドの場所には「出荷高」「出荷予定」「カウント」を交互に出し入れする事で望みに近い集計をGETPIVOTDATA関数で集計することは可能です、が、3種類同時に集計する事は出来ません。
<例>
セルB22~B25までのセルには、上から「アメリカ」「中国「タイ」「合計」と入力しておきます。
セルC21は、例えばピボットフィールドの「値」の場所に「カウント」フィールドが入っていればセルA3は「合計/カウント」と表示されていますのでセルC21には =A14 の式を入れておきます。
後はGETPIVOTDATA関数でセルC25に =GETPIVOTDATA($A$3,B22) の式を入れ、セルC24まで式をオートフィルコピーします。
後はセルC25にSUM関数かオートSUMで合計を出します。
「ピボットテーブルから合計データの抽出」の回答画像2
    • good
    • 0

同じシート上に、もうひとつピボットテーブルを配置する


ではダメなのでしょうか。
この場合、縦より横に配置すべきとも見えますが。
関数で処理するなら SumIF関数
=SUMIF($A:$A,F4,B:B)
みたいな感じですね。
    • good
    • 0
この回答へのお礼

さっそくのご回答ありがとうございます。
ほかの方法でも結構です、参考になりました、ありがとうございました。

お礼日時:2015/08/16 14:29

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

Qエクセルで特定の列にある日付データの中から、指定した日付範囲を抽出する方法を教えてください

例えばこんなデータなのですが、

2002/07/01 99 25 36
2002/07/05 55 33 25
2002/08/01 80 20 51

日付の入っている列を検索して、2002/07/01から2002/07/31
の範囲ならば、その行のデータを別のシートに抽出したいのですが、
日付の範囲は関数でどうすればよいのか分かりません。ACCESSなら
between 9999/99/99 and 9999/99/99って感じで簡単にできるの
ですが。。。エクセルの関数だとIF関数の論理式にAND関数を使って
>=2002/07/01
<=2002/07/31
と入力したので、2002/07/05ならば、いずれもTRUEなので、値を返して
くれると考えたのですが、なぜかダメでした。
(↓こういう入力をしました)
=IF(AND(Sheet2!A1>=2002/7/1,Sheet2!A1<=2002/7/31),Sheet2!A1,"該当月ありません")

Aベストアンサー

こんばんは!

=IF(AND(Sheet2!A1>=2002/7/1,Sheet2!A1<=2002/7/31),Sheet2!A1,"該当月ありません")

おしいですね(^^;
日付をそのまま入力してしまうと数式上では
 2002/7/31 → 2002÷7÷31 になってしまいます。
ダブルクォーテーションで括って(文字列)入力して
それを数値化しましょう!

=IF(AND(Sheet2!A1>="2002/7/1"*1,Sheet2!A1<="2002/7/31"*1),Sheet2!A1,"該当月ありません")

文字列 ="10" に対して 乗算 *1 としても数式が
なり立ち文字列の数字が数値化されます。="10"*1

------------余談--------------------------
ご質問の条件例の場合特例で 2002/7でればOKなので

=IF(TEXT(Sheet2!A1,"yyyym")="20027",Sheet2!A1,"該当月ありません")

でも可能ですね!

こんばんは!

=IF(AND(Sheet2!A1>=2002/7/1,Sheet2!A1<=2002/7/31),Sheet2!A1,"該当月ありません")

おしいですね(^^;
日付をそのまま入力してしまうと数式上では
 2002/7/31 → 2002÷7÷31 になってしまいます。
ダブルクォーテーションで括って(文字列)入力して
それを数値化しましょう!

=IF(AND(Sheet2!A1>="2002/7/1"*1,Sheet2!A1<="2002/7/31"*1),Sheet2!A1,"該当月ありません")

文字列 ="10" に対して 乗算 *1 としても数式が
なり立ち文字列の数字が数値化されます。="10"*1

--...続きを読む

QEXCEL2003で別シートに作成したピボットテーブルからデータをリン

EXCEL2003で別シートに作成したピボットテーブルからデータをリンクさせたいのですが、
合計列をリンクすると#REFになりうまくリンクできません。
そもそもピボットテーブルの合計列や集計列は他のセルにリンクできるのでしょうか?
どなたか教えてください。

Aベストアンサー

こんにちは。

> そもそもピボットテーブルの合計列や集計列は他のセルにリンクできるのでしょうか?
できます。

ピボットテーブルで作成した表の列数や行数が固定された表で、
連続した複数のセル範囲をリンクさせたいのであれば、その範囲をコピーして、
形式を選択して貼り付け>リンク貼り付け
をされたら如何でしょうか。

一つのセルや列数や行数が可変する表であれば、
GETPIVOTDATA関数
を使われては如何でしょうか。

なお、GETPIVOTDATA関数は、引数にフィールド名やアイテム名を指定しますので
それらを非表示にしたり、集計表から除外すると#REF!エラーとなります。
その時は、集計表を確認してください。


人気Q&Aランキング

おすすめ情報