ExcelでVLOOKUPではできなかった検索
このようなエスセルデータを変換できる関数はありますでしょうか?
VLOOKUPではできなかった為いい案があれば教えて頂ければ幸いです。
A B C
1 10/10 りんご 1
2 10/10 みかん 1
3 10/10 りんご 1
4 10/11 いちご 1
5 10/11 りんこ 1
6 10/12 みかん 1
このデータを別シートに下記のようなデータに変換したい
A B C
10/10 10/11 10/12
1 りんご 2 1 0
2 みかん 1 0 0
3 いちご 0 1 0
要点は、同じ日に同じ商品が売れてたものは自動で合算をしセルに反映することがひつようになります。
何卒宜しくお願い致します。
(1)ピボットテーブルが簡便
(2)VBAでやる方法
日付+商品別にソートしてから分類・加算すると簡単。
(3)関数でやる方法
2条件集計なので、SUMPRODUCT関数でやる。(条件付き加算の定石)エクセル2007ならSUMIFS関数が使える。質問にバージョンを書くこと。
ただし日付をデータに存在するがけ1行に作ること。
商品名は、データーフィルターフィルタオプションの設定ー「重複するレコードは無視する」で、商品のダブりが無いよう、リストを前以って作っておくこと。
例データ Sheet1 A1:C7
10月10日りんご1
10月10日みかん1
10月10日りんご1
10月11日いちご1
10月11日りんご1
10月12日みかん1
10月12日りんご1
Sheet2
B2に
=SUMPRODUCT((Sheet1!$B$1:$B$100=$A2)*(Sheet1!$A$1:$A$100=B$1)*(Sheet1!$C$1:$C$100))
縦横に式を複写
結果
--10月10日10月11日10月12日
りんご211
みかん101
いちご010
ーーーー
>VLOOKUPではできなかった検索
VLOOKUPは1つしか検索できないので的ハズレ。
また検索では無いでしょう。集計です。
元データがSheet1の場合、集計するシートの10/10 りんご の計算セルに
=SUM(IF((Sheet1!$A$1:$A$6=B$1)*(Sheet1!$B$1:$B$6=$A2),Sheet1!$C$1:$C$6))
と入力し、Shift と Ctrl を押しながらEnter。
これを他のセルにコピーすれば良いと思います。
- 最新から表示
- |
- 回答順に表示













