激凹みから立ち直る方法

下記のリストを別シートにて集計したいと思います。
(入力シート)
  A   B
1 テレビ 1
2 テレビ 2
3 冷蔵庫 3
4 テレビ 1
5 洗濯機 5
(集計シート)
  A   B
1 テレビ 4
2 冷蔵庫 3
3 洗濯機 5
同じ商品の数量を足し、同じ商品名は表示せずに詰めた状態で
リストを作成したいのですが、どのようにすればいいですか?
どうぞ宜しくお願いします。

A 回答 (4件)

◆入力シートのC列に作業列


C1=IF(COUNTIF($A$1:A1,A1)=1,ROW(),"")
★下にコピー

◆集計シートの式
A1=IF(ROW(A1)>COUNT(入力シート!C:C),"",INDEX(入力シート!A:A,SMALL(入力シート!C:C,ROW(A1))))
B1=IF(A1="","",SUMIF(入力シート!A:A,A1,入力シート!B:B))
★共に下にコピー
    • good
    • 0
この回答へのお礼

助かりました。ありがとうございました。

お礼日時:2007/10/12 06:25

#3です。


終わりが尻切れになり、失礼しました。
#3は作業列を使わない回答を考えました。
式が技巧的で長くなる、配列数式を使う、が難しくなっている欠点です
A.作業列を使う(#1のご回答や、私が他で既回答のimogasi方式)
B.作業列を使わない、配列数式を使う(本件)
C.作業列を使わない、配列数式を使わない。(回答が出るかも)
関数での非重複抜き出しが、いかに大変(関数では苦手の課題)
か判るでしょう。
ーー
なぜ6行-2行+1=5種類が判るかというと
=SUM(IF(COUNTIF(OFFSET($A$2,0,0,ROW(A2:A8)-1,1),A2:A8)=1,1,0))
と入れて、Shift+CTRL+ENTERで

と出るからです。
ーー
集計は
Sheet2のB2に
=IF(A2="","",SUMIF(Sheet1!A:A,A2,Sheet1!B:B))
ト入れてB6まで式を複写する。
結果
テレビ4
冷蔵庫3
洗濯機5
掃除機3
パソコン6
ーーー
本当は、A2に入れる式の前に=IF(row()-1>○,"",式)
○は上記式の結果の5かそれを出す式.
のようにすべきなのだが、式が長くなるので、略。
    • good
    • 0
この回答へのお礼

参考になりました。
ありがとうございます。

お礼日時:2007/10/12 06:24

例データ Sheet1に


商品数
テレビ1
テレビ2
冷蔵庫3
テレビ1
洗濯機5
掃除機3
パソコン6
ーー
Sheet2のA2:A6を範囲指定し
=INDEX(Sheet1!$A$1:$A$8,SMALL(IF(COUNTIF(OFFSET(Sheet1!$A$2,0,0,ROW(Sheet1!A2:A8)-1,1),Sheet1!A2:A8)=1,ROW(Sheet1!A2:A8),""),ROW(Sheet1!A2:A8)-1),1)
と入れて、
Shift+ctrl+ENTERを押す。
結果 A2:A6
テレビ
冷蔵庫
洗濯機
掃除機
パソコン
なぜA6なのかは
==
集計は
    • good
    • 0

数式を使用する以外に、Excelのビボットテーブルを使用して集計後、集計の合計行だけを他のシートなどにコピペして、新しいリストを作成する方法があります。



「ピボットテーブルの作成」
http://hamachan.fun.cx/excel/piboto.html

「集計の合計行だけをコピーする」
http://officetanaka.net/excel/function/tips/tips …
    • good
    • 0
この回答へのお礼

これも便利そうですね。
ありがとうございました。

お礼日時:2007/10/12 06:25

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


おすすめ情報