• ベストアンサー

エクセルで重複データを不可算にする。

SUMIFで、 検索条件   合計する値  A       2  B       2  C       2  A       2  A       2   B       2 このような場合、A=6、B=4,C=2になりますが、 2回目以降出てきたものは不可算としA=B=C=2と したいのです。データとしては残すため行削除は、 できません。 今は、条件付書式で重複セルを赤で表し、 2回目以降出てきたものの値を0にしていますが、 実際の検索条件は8桁のコードで約100行あり、 1ブックにつきシートも平均20くらいあるため、 目で見ていくのも大変です。 もし分かる方いらっしゃったらお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • hitosa
  • ベストアンサー率21% (6/28)
回答No.2

合計しないならSUMIFを使用する必要って ないと思うんですが・・・ 例えばB1にA(検索条件に合致するもの) G1からH25に検索条件と合計する値を置いて =VLOOKUP(B1,$G$1:$H$25,2,FALSE) この関数を使えば最初に検索条件に合致するものを 検索できると思います

uk5050
質問者

お礼

VLOOKUPの場合=VLOOKUP("00000001,~)+VLOOKUP(00000002,~)+ といった検索した値の足算ができないものと思っていました。が、今この方法でやったらできました。ありがとうございました。

その他の回答 (4)

  • hinebot
  • ベストアンサー率37% (1123/2963)
回答No.5

#3です。 たびたび済みません。 私の方法だとご質問にある例のように「合計する値」が全部同じでないと使えないですね。 なので、#2の方の回答のようにVLOOKUPで良いのではないでしょうか。

uk5050
質問者

お礼

今回の場合、Aに対応する数字は2とかBに対応する数字は3といったように、おなじです。 ですからこのほうほうで問題なくできました。 ありがとうございました。 それにしてもいろいろな考え方がありますね。

  • hinebot
  • ベストアンサー率37% (1123/2963)
回答No.4

#3です。訂正 今、 =SUMIF(A1:A6,"A",B1:B6) のように入っていると思うので、これを =SUMIF(A1:A6,"A",B1:B6)/COUNTIF(A1:A6,"A") と変更すればOKでは?

  • hinebot
  • ベストアンサー率37% (1123/2963)
回答No.3

今、 =SUMIF(A1:A6,"A",A1:A6) のように入っていると思うので、これを =SUMIF(A1:A6,"A",A1:A6)/COUNTIF(A1:A6,"A") と変更すればOKでは?

  • mshr1962
  • ベストアンサー率39% (7417/18945)
回答No.1

別のセルを使ってもいいのなら =IF(COUNTIF($A$1:$A1,$A1)=1,B1,0) としてこの列をSUMIFで求める。 ただし複数のシートの場合は使えませんが... 後は、Access等お持ちならそちらで集計(グループ化)するのも一つの方法です。

uk5050
質問者

お礼

ありがとうございます。 1列たせば、確かにこの方法でできますね。 アクセスはもってないですねー。