• ベストアンサー

2つの条件の下でのデータ抽出

現在データをまとめているのですが、 どのようにデータをまとめる方法があるかわりません。 そこで、質問させていただきます。 例えば、下記のような月曜日は梅干のおにぎり、火曜日はおかかのおにぎりなどのデータがあります。 月 梅干 火 おかか 水 しゃけ 木 おかか 金 おかか 月 おかか 火 おかか 水 梅干 木 梅干 金 おかか これで月曜日は梅干とおかかが1回ずつ、火曜日はおかか2回など・・。曜日ごとにどのおにぎりが多かったかのデータを抽出したいのですがどのような方法があるでしょうか?

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

  • ベストアンサー
  • KURUMITO
  • ベストアンサー率42% (1835/4283)
回答No.2

関数で処理するなら次のようにします。 A1セルからA100の間に曜日があり、B1セルからB100の間に梅干しなどが入っているとします。 お求めの表を作るためにE1セルから右横方向に曜日を入力します。 D2セルから下方に梅干、おかかなどと入力します。 E2セルには次の式を入力し横方向にオートフィルドラッグしたのちに下方にもオートフィルドラッグします。 =IF(OR(E$1="",$D2=""),"",SUMPRODUCT(($A$1:$A$100=E$1)*($B$1:$B$100=$D2)))

noname#114311
質問者

お礼

お返事が遅れてもうしわけありませんでした。 おかげで解決できました。 ありがとうございます。

noname#114311
質問者

補足

質問ですが、100の代わりに500や1000を入れると、「VALUE」とでるのですが、大きい数字(膨大なデータ)は計算できないのでしょうか? 仮に1000のデータを集計したい場合は、どのような方法があるえしょうか?

その他の回答 (3)

  • tom04
  • ベストアンサー率49% (2537/5117)
回答No.4

こんにちは! No.3です。 画像がちゃんと表示されないと言うことですね? それではもう一度画像をアップさせてもらいます。 今度は表示されれば良いのですが・・・ どうも何度も失礼しました。m(__)m

noname#114311
質問者

お礼

画像見れました!! 何度もお助けいただきましてありがとうございました。

  • tom04
  • ベストアンサー率49% (2537/5117)
回答No.3

こんばんは! すでに回答は出ていますので、参考程度で目を通してみてください。 ↓の画像のように表を作ってみました。 私が好きな「とり五目むすび」が入っていませんので 今後、もしおむすびの種類が増えても対応できるようにしています。 とりあえず、1000行まで対応できる数式にしてみます。 A列が作業用の列になりますので、目障りであればA列を非表示にしてください。 A2セルに =IF(COUNTIF($C$2:C2,C2)=1,ROW(A1),"") として1000行目くらいまでオートフィルでコピーします。 そして、E2セルに =IF(COUNT($A$2:$A$1000)>=ROW(A1),INDEX($C$2:$C$1000,SMALL($A$2:$A$1000,ROW(A1))),"") F2セルに =IF($E2="","",SUMPRODUCT(($B$2:$B$1000=F$1)*($C$2:$C$1000=$E2))) として金曜日までのJ2セルまでオートフィルでコピーします。 最後にE2~J2セルを範囲指定し、J2セルのオートフィルハンドルの(+)マークで 下へずいっ!ずぃ~~~!とコピーすると表のような感じになります。 これで新たにおむすびのメニューが増えても、右側の表に反映されるはずです。 尚、数式の範囲指定はデータ量によってアレンジしてみてくださいね。 以上、参考になれば幸いですが、 他に良い方法があれば読み流してください。m(__)m

noname#114311
質問者

お礼

お返事が遅れて申し訳ありませんでした。 ご解答ありがとうございます。 せっかく画像を添付していただいたのにみれません。 もし、よろしければ、もう一度添付していただけないでしょうか?

  • kybo
  • ベストアンサー率53% (349/647)
回答No.1

ピボットテーブルでいいと思います。 範囲選択→データ→ピボットテーブル→Excelのリストデータベース、次へ→次へ→新規ワークシート、レイアウトで曜日を行、おにぎりの種類を列とデータへドラッグし、OK、完了

noname#114311
質問者

お礼

お返事が遅れまして申し訳ありません。 解答ありがとうございました。

関連するQ&A