エクセル(Excel)で「UNIQUE」と「COUNTIF」関数の組合せ

質問指定した範囲内に複数の同じ値がある場合、最初のひとつだけ残すと同時に、同じ値がいくつあったのかカウントできますか?

回答「UNIQUE関数」と「COUNTIF関数」を組み合わせて実現できます。

Office 2021 以降の Excel で使える「UNIQUE関数」なら、指定範囲内に複数の同じ値がある場合、最初のひとつだけ残して、残りを削除してユニークな「一意の値」だけを並べて一覧表示できると紹介しました。

この記事で使った単純化した例は、「A1」から「A8」に  30、10、80、10、50、30、40、10  と値が並んでいる場合、「C1」に「UNIQUE関数」を使って

=UNIQUE(A1:A8)

と入力して

qa240320-01.png

確定すると、「C1」から「C5」に  30、10、80、50、40  と表示される、というものです。

qa240320-02.png

今回は、その表示された各値について、元はいくつあったのかカウントする方法を解説します。ここで使うのが「COUNTIF関数」です。

「COUNTIF関数」の構文は以下のようになります。

COUNTIF(範囲, 検索条件)

詳しくは用語解説しました。

そこで先ほど「C1」から「C5」に抽出された「30、10、80、50、40」が元の配列(A1:A8)の中にはそれぞれ「いくつあったか」をカウントする場合、

「D1」から「D5」にそれぞれ個別に

=COUNTIF(A1:A8,C1)
=COUNTIF(A1:A8,C2)
=COUNTIF(A1:A8,C3)
=COUNTIF(A1:A8,C4)
=COUNTIF(A1:A8,C5)

と入力することで「D1」から「D5」に

2、3、1、1、1

と表示されます。

qa240703-04.png

つまり複数あった 30 は 2個、10 は 3個。その他は 1個ずつということが分かります。

個別に入力しなくても「D1」に

=COUNTIF(A$1:A$8,C1)

と入力して、「D1」の「オートフィルハンドル」を「D5」までドラッグすることでも

qa240703-06.png

同じ結果となります。「D1」の「オートフィルハンドル」をダブルクリックもありです。

これくらいの数なら、どちらでもいいでしょう。


◆◇◆

ここで「スピル機能」を使えば「D1」に

=COUNTIF(A1:A8,C1:C5)

と入力するだけで「D1」から「D5」に

2、3、1、1、1

と表示されます。

qa240703-07.png

ここで「#(スピル範囲演算子)」を使って

=COUNTIF(A1:A8,C1#)

と入力、計算しても同じ結果になります。

qa240703-08.png

使いこなせてくると「スピル機能」は画期的だと体感できます。

 

理解を深めるための「パソコン用語解説

記事の情報は公開時あるいは更新時のもので、最新情報はリンク先など情報元の公式ページでご確認ください。

スポンサーリンク

ご意見&コメント

パソコントラブルQ&A」をご利用いただき、ありがとうございます。

「参考になった」「ちょっと違うかも?」というときは TwitterFacebookページを使ってご感想やコメントをいただけると嬉しいです!励みにもなりますし、必要に応じて情報の追加や修正もしてまいります。

 

同じカテゴリー「エクセル(Excel)」のQ&A

 

同じカテゴリー「エクセル(Excel)」の用語解説

関連した記事を検索

パソコントラブルQ&A」「パソコン用語解説」では関連Q&Aや用語解説を豊富に掲載中です。検索してみてください!

年別Q&A (1145 件)

編集長のプロフィール

編集長

:パソコン生活応援アドバイザー。「なにしろパソコン.com」サイト運営、メルマガ編集、セミナー講師からコラム・書籍執筆まで実績豊富!

「パソコントラブルQ&A」ではトラブル解決のヒントなども紹介していますが、解決をお約束するものではありません。 トラブルの深刻度やご利用のパソコン環境によっては効果がなかったり、ほかのトラブルを誘発する場合もあります。そのため、作業前に大切なデータは、ご自身で必ずバックアップをおこなってください。

本サイトを参考にしたパソコン設定、サイト閲覧、紹介したソフトウエアや機器の購入&使用、そしてトラブル対応やインターネット活用は『利用者の責任』でお願いします(免責事項)。