昨日見た夢を教えて下さい

(表1)から(表2)に重複してない区名だけを取り出す方法についてお聞きします。
ネットで調べましたが上手くいかないので皆様の力をお借りする次第です。
なお、EXCEL2019のため「UNIQUE」関数は使えません。
① F7セルに=C7を入れる
② F8のセルに=IFNA(INDEX($C$7:$C$16,MATCH(0,COUNTIF($F$7:F7,$C$7:$C$16),0)),"")
③ ②の式をF16までコピー
以上のように①~③を試しましたが希望するような表示ができませんでした。
間違いを指摘いただければ幸いです。
よろしくお願いいたします。

「重複しない値を取り出したい」の質問画像

A 回答 (5件)

この課題の解決方法として、少なくとも以下の2つの方法があると思います。



(1)C列のデータをC7セルを基準位置として範囲を下方向に1行、2行、3行・・・と増やしていくとき、最下行のC列の値がC7以降何回登場したかをカウントする。このカウントが1という条件を満たすC列の行位置を配列に格納し、行位置の若い順に取り出す。

(2)C列のデータをC7セルから下方向に調査していくとき、「調査対象セルの行位置」と「C列を検索範囲としてMATCH関数で調査対象のC列の値を検索した結果の行位置」とが一致するという条件を満たすC列の行位置を配列に格納し、行位置の若い順に取り出す。

(1)はカウントが1となるのは初めて登場したときなので、1という条件を満たすもののみを集めれば「ユニークである」ことになります。

(2)はMATCH関数では検索範囲に同じ値が複数存在しても最初にヒットしたものの位置が返るという性質を利用し、「最初にヒットしたもの」=「ユニーク」なので、行位置が「最初にヒットしたもの」と一致するか判定することで「ユニークである」を実現できます。

既出のNo1さん、No.2さんの回答は(1)の考え方で作成されていると思います。そこで(2)の考え方で数式を作成してみました。F7セルに

=IFERROR(INDEX(C:C,AGGREGATE(15,6,ROW($7:$16)/(MATCH(C$7:C$16,C:C,0)=ROW($7:$16)),ROW(A1))),"")・・・①

という数式を入れて下方向へコピーすれば御希望の結果が表示されると思います。
なお、①の数式の$7:$16およびC$7:C$16の部分は、ご質問者が例示されたデータに基づいていますので、実際のデータ範囲が例示と異なる場合は、実際のデータ範囲に合わせて調整願います。
    • good
    • 0

No.4です。



前回回答の①の数式は、No.1さんの回答にあるAGGREGATE関数を用いて、No.1さんとは異なる考え方で数式を作成したものです。

一方、No.2さんはSMALL関数を用いて数式を作成しておられます。SMALL関数はLARGE関数と対になる関数ですので、前回回答の①の数式をLARGE関数を用いて書き換えてみました。F7セルに

=IFERROR(INDEX(C:C,1/LARGE((MATCH(C$7:C$16,C:C,0)=ROW($7:$16))/ROW($7:$16),ROW(A1))),"")・・・②

を入れて下方向へコピーすれば同様の結果が得られると思います。前回回答の①の数式より僅かですが、簡潔な数式になりました。
    • good
    • 0

[No.2お礼]へのコメント、


》 F4はF7では?
仰るとおりでした。(パチパチ…)
    • good
    • 0

参考までに、


添付図参照(Excel 2019)

H7: =IF(COUNTIF(C$7:C7,C7)>1,"",B7)
F4: =IFERROR(INDEX(C$7:C$16,SMALL(H$7:H$16,E7)),"")

範囲 F7:H7 を下方にズズーッとオートフィル
オ・シ・マ・イ
「重複しない値を取り出したい」の回答画像2
    • good
    • 0
この回答へのお礼

F4はF7では?

お礼日時:2024/08/10 23:22

こんばんは。



簡単な方法は
1)C7:C16をF7:F16にコピペ
2)F7:F16を選択状態で、「データ」-「データツール」-「重複の削除」を実行
で、お求めの結果が得られると思います。

関数でなさりたいのであれば、F7セルに
=IFERROR(INDEX(C:C,AGGREGATE(15,6,ROW(C$7:C$16)/(COUNTIF(OFFSET(C$7,0,0,ROW(C$7:C$16)-6),C$7:C$16)=1),ROW(A1))),"")
を入力して、下方にフィルコピーすれば良いでしょう。
    • good
    • 0

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

このQ&Aを見た人はこんなQ&Aも見ています


おすすめ情報

このQ&Aを見た人がよく見るQ&A