アプリ版:「スタンプのみでお礼する」機能のリリースについて

商品コード別集計表を作りたいのですけどアドバイスお願いします
すでにできているシートを改良して集計表を作りたいのですけどアドバイスお願いします

【何がしたい】データー原本は下記のように日別にランダムにデータを入力しています
これを横軸に日付、縦軸に商品コードそして表にはその日毎の売り上げ総数個数を表示します

〈データ原本〉

404482324 50
404461254 100
404452664 50
404452664 230
404452324 110
.............

404462428 150

先頭9桁の数字は前5桁が日付で残りが商品コードです
次のセルはその日に売り上げた個数です


《結果(新しいシート)》

商品コード 9/1 9/2.....9/24 9/25..9/27 9/30
1254........................100
2324...................110........50
2428........................150
2664...................280........50

アドバイスお願いします。すでにできているシートには何日にこの商品が売れたの一覧表でした

A 回答 (2件)

データ原本がシート1のA列とB列にそれぞれ入力されているとします。


新しいシートではA列に商品コード1行目にB1セルから右横方向には日付が入力されているとします。
B2セルには次の式を入力して右横方向にオートフィルドラッグしたのちに下方向にもオートフィルドラッグします。

=IF(COUNTIF(Sheet1!$A:$A,B$1&$A2)=0,"",SUMIF(Sheet1!$A:$A,B$1&$A2,Sheet1!$B:$B))
    • good
    • 0
この回答へのお礼

アドバイスありがとうございます。

シンプルですねワークシートに組み込んでみますね

お礼日時:2010/10/05 20:22

こんにちは!


色々方法はあるかと思いますが・・・
一例です。
Sheet2の日付はシリアル値であらかじめ入力してあるものとします。
↓の画像のようにSheet1に作業用の列を3列設けています。

作業列C2セルに
=IF(A2="","",LEFT(A2,5)*1)

D2セルに
=RIGHT(A2,4)

E2セルに
=IF(D2="","",IF(COUNTIF($D$2:D2,D2)=1,ROW(A1),""))

という数式を入れ、C2~E2セルを範囲指定し、E2セルのフィルハンドルでダブルクリック、またはオートフィルで下へずぃ~~~!っとコピーします。

そして、Sheet2のA2セルに
=IF(COUNT(Sheet1!$E$2:$E$1000)<ROW(A1),"",INDEX(Sheet1!$D$2:$D$1000,SMALL(Sheet1!$E$2:$E$1000,ROW(A1))))

B2セルに
=IF($A2="","",SUMPRODUCT((Sheet1!$C$2:$C$1000=B$1)*(Sheet1!$D$2:$D$1000=$A2)*(Sheet1!$B$2:$B$1000)))
という数式を入れ、月末まで列方向にオートフィルでコピーします。

最後にA2~2行目の最終列まで範囲指定し、最終列セルのフィルハンドルでオートフィルで下へコピーすると
画像のような感じになります。
結果が「0」の場合はもちろん「0」が表示されてしまいますので、あまりに「0」が多すぎて目障りですので
当方使用のExcel2003の場合ですが、
メニュー → ツール → オプション → 「表示タブ」の「ゼロ値」のチェックを外しています。

尚、数式はSheet1の1000行目まで対応できるようにしています。

以上、参考になれば良いのですが
他に良い方法があればごめんなさいね。m(__)m
「商品コード別集計表を作りたいのですけどア」の回答画像1
    • good
    • 0
この回答へのお礼

アドバイスありがとうございます。

年なんでしょうか、昔はいろいろと自分で関数を組み合わせて考えていたのですが・・・。
早速ワークシートに組み込んでみます

お礼日時:2010/10/05 20:19

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