- ベストアンサー
エクセルでデータ抽出・集計する方法とは?
- エクセルでデータ抽出・集計する方法について説明します。
- エクセルの表形式にデータが入力されており、それを集計する方法を解説します。
- 特定の項目をまとめて金額を算出する際、消費税を抜いた金額の合計を表形式で表示する方法について解説します。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
No.1です! 補足を読むのが遅くなって申し訳ございません。 >オーダーの番号をべた打ちで入れると右に金額がぱっと出るようにしたいので・・・ とあるのですが、Sheet2のB列にオーダー(番号)を入力した場合のみ、データが表示できれば良い!ということですかね? 一応そういうことだとして・・・ もしそうであればSheet1の作業用の列は必要ありません。 一つの顧客に対してオーダーは必ず決まった一つの番号とします。 Sheet2にすぐに数式を入れれば大丈夫だと思います。 まず、Sheet2のA2セルには =IF(B2="","",INDEX(Sheet1!A:A,MATCH(B2,Sheet1!B:B,0))) という数式を入れオートフィルで下へずぃ~~~!っとコピー! そしてG2セルには =IF(B2="","",SUMPRODUCT((Sheet1!$B$2:$B$1000=B2)*(Sheet1!$E$2:$E$1000="")*(Sheet1!$G$2:$G$1000))) という数式を入れ、これもオートフィルで下へコピー! これでSheet2のB列にデータを入力すればA列の「顧客名」とG列の「金額」が表示されると思います。 今回も外していたらごめんなさいね。m(__)m
その他の回答 (1)
- tom04
- ベストアンサー率49% (2537/5117)
こんにちは! 一例です。 ↓の画像のようにSheet1に作業用の列を2列設けています。 作業列1のH2セルに =IF(OR(B2="",COUNTIF($A$2:A2,A2)<>1),"",ROW()) 作業列2のI2セルに =IF(B2="","",IF(A2="",I1,A2)) という数式を入れ、H2・I2セルを範囲指定しI2セルのフィルハンドルで下へずぃ~~~!っとこれ以上データがない!というくらいまでコピーしておきます。 そして、Sheet2のA2セルに =IF(COUNT(Sheet1!$H:$H)<ROW(A1),"",INDEX(Sheet1!A:A,SMALL(Sheet1!$H:$H,ROW(A1)))) として隣のB2セルまでオートフィルでコピーし、そのまま下へコピーします。 最後にG2セルに =IF(A2="","",SUMPRODUCT((Sheet1!$I$2:$I$1000=A2)*(Sheet1!$E$2:$E$1000="")*(Sheet1!$G$2:$G$1000))) という数式を入れオートフィルで下へコピーすると画像のような感じになります。 尚、Excel2007をお使いのようなのでSUMIFS関数が使えるはずですが、とりあえず当方使用のExcel2003での方法です。 以上、参考になれば良いのですが・・・m(__)m
補足
すみません、数式を打ち込んでみて なんとなく、ニュアンスはわかってきて・・・ かなりの時間、画面とにらめっこしてるのですが、 Sheet2のA2セルに =IF(COUNT(Sheet1!$H:$H)<ROW(A1),"",INDEX(Sheet1!A:A,SMALL(Sheet1!$H:$H,ROW(A1)))) と打ち込むと すでに値がでることになりませんか? オーダーの番号をべた打ちで入れると右に金額がぱっと出るようにしたいので、 べた打ちの値を見に行って金額がでる様な数式にしないとならないですよね? 凄く近づいたなと思ってるのですが・・・ どうでしょうか?
お礼
お礼が遅くなってすみません。 なんとかうまくいきました。 ありがとうございました。 助かりました。