• ベストアンサー

ピポットテーブル以外で複数条件の集計をしたい。

2つのファイルがあります。 ファイルAには キー項目1 キー項目2 金額。 ファイルBには キー項目1 キー項目2 10月 11月・・・。 10月、11月の列にはデータは入っていません。 この集計結果が入るようにしたいです。 AとBを比較して「項目1」and「項目2」と一致するデータの金額をファイルBの各月の列へ集計したいのです。 ファイルAは1ヶ月分のデータが入っています。 ただ集計をしたい場合はピポットテーブルで出来たのですが、決まった列&行へその集計結果を入れたいです。 分かり難いかもしれませんが、よろしくお願いします。 

質問者が選んだベストアンサー

  • ベストアンサー
  • tascany
  • ベストアンサー率48% (15/31)
回答No.4

たとえば、「10月」というファイルの「Sheet1」の、A列にキー項目1、B列にキー項目2、C列に金額のデータが100個ずつあるとします。一行目はフィールドで、二行目から101行目までデータが詰まってるわけです。 1)ファイルB(集計用ファイル)のA1に「キー項目1」、B1に「キー項目2」といれ、A列とB列とに集計したいキー項目の組合せを列挙する。 2)10月のデータをC列で集計したい場合、C2に、 =SUMPRODUCT(($A2='[10月.xls]Sheet1'!$A$2:$A$101)*($B2='[10月.xls]Sheet1'!$B$2:$B$101)*'[10月.xls]Sheet1'!$C$2:$C$101) という式を入れ、必要分下方向にコピペ。 11月以降D列、E列、F列・・・、というふうに集計する場合も、基本的にはうえの式をコピーすればいいのですが、ファイル名(およびシート名)の部分を書き替える必要があります。 ※SUMPRODUCTの括弧内は三つの項の積(*)で表されています。誤解をおそれずにいえば、指定範囲内で項目1が一致し(第一項)、かつ項目2が一致する(第二項)場合、つまりはいずれも一致する場合(問題文に即していえば、つまり「AとBを比較して「項目1」and「項目2」と一致する」場合)、そのデータの金額(第三項)を集計せよ、ということです。

fuua
質問者

お礼

この関数で無事集計をすることが出来ました。 ありがとうございました。

その他の回答 (3)

  • n_and_n
  • ベストアンサー率16% (2/12)
回答No.3

ピボットテーブルならば出来るんでしたね。 それでしたら、ファイルA、ファイルBに新しいフィールド「項目1」and「項目2」を足します。 次のようになっているものとします。 ファイルA: A列    B列     C列               D列 キー項目1 キー項目2 「項目1」and「項目2」    金額。 ファイルB: A列    B列     C列               D列     E列 ・・・ キー項目1 キー項目2 「項目1」and「項目2」    10月   11月・・・。 ファイルBの10月の列(D列)のセル(D2)には、  =SUMIF([10月.xls]Sheet1!C:C, C2, [10月.xls]Sheet1!D:D) を入れます。 注意:ファイルBにはすべてのキー項目が用意されていないといけません。 ダブってもいけません。 この点、ピボットテーブルならばキー項目の落しが無く、安心できます。 どうしてもファイルBのようにしたいのであれば、マクロに頼るしかありません。 勿論、必要なところだけ取り出したいのであれば、話は別ですが。

  • imogasi
  • ベストアンサー率27% (4737/17070)
回答No.2

質問を明確に (1)ファイルAとファイルBは別ブック、ですね。 (2)データが入っている(入れる)、ファイルAとファイルBは各1シートしかない、ですね。 (3)ファイルAのSheet1は 日付があるのでしょうか。 >ファイルAは「1ヶ月」分のデータが入っています。 とあって、10、11月が出て来るのはなぜ? 下記のイメージで良いですか。 日付    項目1 項目2 金額 2004/10/1 ワカメ 青森産 2000 2004/10/1 ワカメ 岩手産 2200 2004/10/1 ワカメ 青森産 2800 2004/11/1 イワシ 茨城産 2500 2004/11/1 イワシ 秋田産 2500 2004/11/1 イワシ 青森産 2500 2004/12/1 イワシ 青森産 2500 (4)ファイルBのSheet1 項目1 項目2 10月  11月 12月 ワカメ 青森産 4800 ワカメ 岩手産 2200 イワシ 青森産      2500  2500 イワシ 茨城産   ・・・ イワシ 秋田産   ・・・ (5)ファイルBのSheet1はファイルAのSheetXに出す、では不可ですか?

  • n_and_n
  • ベストアンサー率16% (2/12)
回答No.1

各月のファイルに「月」と言うフィールドを足して、 全行に例えば「10月」とその月を入れます。 全ての月のデータを1つのシートにまとめます。 ピボットテーブルで、          月 ----------+----------------------------------- 項目1   |    金額 項目2   |  と配置すれば、ファイルB のようになります。

関連するQ&A