• 締切済み

重複データの合計

コード 商品名 個数 合計 10001 机 赤 1 10090 椅子 青 4 10025 箪笥 茶 5 10001 机 赤 3 以上のようなデータがあります。商品コードは3000種類くらいあるのですが、商品コード毎に並べ替えて個数を合計したいです。 また可能であれば、コード毎に並べ替えた各一番最後の行の合計のセルに数字が自動で反映出来ないでしようか⁈ よろしくお願いします。

みんなの回答

  • bunjii
  • ベストアンサー率43% (3589/8249)
回答No.4

>合計欄に今教えていただいた式を入れ合計を出した後、重複した合計欄が空白の行を削除する方法はありますか⁈ 後出しジャンケンですか。 最初にそれを考えたのですが、あなたの思惑と食い違うといけないので要望通りの処理にしました。 後出し分は別表になりますのでご了承ください。 添付画像ではE列を作業用にして下記の式を入力しました。 E1=IF(A1="","",IF(COUNTIF(A1:A3000,"="&A1)=1,ROW(),"")) E2以下はE1をコピーしますが、エラー警告が出ても無視して問題ありません。 F列とG列は作業列から導かれたコードと商品名で重複はありません。 INDEX関数とVLOOKUP関数を使いました。 H列にコード毎の合計を計算します。 H2=IF(F2="","",SUMIF(A:A,"="&F2,C:C)) H3以降はH2セルをコピーします。

mayouexcel31
質問者

お礼

後から更に質問してしまい、すみませんでした。 これから挑戦してみます。ありがとうございました。

  • kagakusuki
  • ベストアンサー率51% (2610/5101)
回答No.3

 横から失礼します。 >合計欄に今教えていただいた式を入れ合計を出した後、重複した合計欄が空白の行を削除する方法はありますか⁈ という事でしたら、最初から合計欄が空白の行等が現れない様に集計した方が楽ではないかと思います。  今仮に、元データの表がSheet1上にあり、「コード」と入力されているセルがA1セル、 「商品名」と入力されているセルがB1セル、 「個数」と入力されているセルがC1セルであるものとし、コードが重複しない様にコード毎に並べ替えた表をSheet2上に自動的に表示させるものとします。  又、A列に入力されているコードは必ず数値として表せるものだけであり、「A1023」等の様な数字以外の文字が含まれているものは存在していないものとします。  まず、Sheet2のA2セルに次の関数を入力して下さい。 =IF(A1="","",IF(COUNTIF(Sheet1!$A:$A,">"&SUM(A1)),SMALL(Sheet1!$A:$A,COUNTIF(Sheet1!$A:$A,"<="&SUM(A1))+1),""))  次に、Sheet2のB2セルに次の関数を入力して下さい。 =IF($A2="","",VLOOKUP($A2,Sheet1!$A:$B,2,FALSE)&"")  次に、Sheet2のC2セルに次の関数を入力して下さい。 =IF($A2="","",SUMIF(Sheet1!$A:$A,$A2,Sheet1!$C:$C))  そして、Sheet2のA2~C2の範囲をまとめてコピーして、同じ列の3行目以下に貼り付けて下さい。  以上です。

mayouexcel31
質問者

お礼

ありがとうございます。 教えていただいた様に、これから挑戦してみます。 何通りか教えていただいたので、試してみて使いやすい方法で今後は処理します。

  • bunjii
  • ベストアンサー率43% (3589/8249)
回答No.2

>コード毎に並べ替えた各一番最後の行の合計のセルに数字が自動で反映出来ないでしようか⁈ できます。 コードをキーとしてソート(並べ替え)を行って合計の列に下記関数式を入力してください。 D2=IF(OR(A2=A3,A2=""),"",SUMIF(A:A,"="&A2,C:C)) D3以降はD2セルをコピーすれば完了です。

mayouexcel31
質問者

補足

早速の御回答ありがとうございました。 もう一つ補足なのですが、合計欄に今教えていただいた式を入れ合計を出した後、重複した合計欄が空白の行を削除する方法はありますか⁈

  • maiko0318
  • ベストアンサー率21% (1483/6969)
回答No.1

環境は?エクセルがいいのか、データベースがいいのか、プログラムがいいのか 元ネタはどんなふうに入ってますか?

mayouexcel31
質問者

補足

説明足らずで申し訳ありませんでした。 データはExcelに商品コードや商品名、個数を単純に入力してあるだけです。 そのExcelのデータを商品コード順に並べ替えるところまでは出来るのですが、それ以降が思うようにできなくて… 下記の通りがBestですが、初心でも簡単に関数を使用しデータの処理が出来ないかと悩んでいます。 1→商品コード順に並べ替える 2→商品コード毎に個数を自動で合計し、重複している商品コードの合計欄は空白にする 3→合計欄の入力されている商品コードの行以外は削除する 上記の順にこだわりはありません。 この様な説明で大丈夫でしょうか⁈

関連するQ&A