プロが教える店舗&オフィスのセキュリティ対策術

A列     B列    C列
りんご    1
みかん    2
ばなな    3
りんご    4

このような表がある場合、重複しているりんごはC列に1&4と表示させるようにしたいです。
どのような関数を使えば出来るのか教えていただきたく、よろしくお願いします。

A 回答 (2件)

添付画像をご覧ください。



A列、B列が画像のような状態だったとします。
C1セルに

=IF((MATCH(A1,$A$1:$A$12,0)=ROW(A1))*(COUNTIF($A$1:$A$12,A1)>1),TEXTJOIN("&",1,IFERROR(AGGREGATE(15,6,($B$1:$B$12)/($A$1:$A$12=A1),ROW($A$1:$A$12)),"")),"")

という数式を記述し、下方向へコピーしています。

これで、A列に重複している項目がある場合、C列にその項目に該当するB列の値を結合して表示させるようにしています。

表示位置は、A列の該当項目が最初に登場する行にのみ表示するというルールにしました。

添付画像はEXCEL2021のものです。
スピル機能が使えないバージョンでは、上記数式を数式バーに記述し、ENTERキーで確定ではなく、CTRL+SHIFT+ENTERで確定して「配列数式」にする必要がある気がします。
※スピル機能が使えないバージョンでの上記数式の使用は未検証です。
「関数を教えてください。」の回答画像2
    • good
    • 1

こんばんは



Filter関数が使える環境なら、C1セルに
 =TEXTJOIN("&",1,FILTER(B:B,A:A=A1,""))
とか。
重複がない場合には表示しないなら、COUNTIFなどで同じ種類の数を数えて、2以上なら表示するようにするとか。
    • good
    • 2

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