Excelで重複する値が何種類あるか数えるには?
重複している行数ではなく、2回以上登場するコードの種類数を求めます。件数の集計と絞り込みを組み合わせる手順です。
2回以上登場する値の種類数は、値ごとの件数を数え、2件以上だけに絞り、残った行をもう一度数えると求められます。Aが3回、Bが2回、Cが1回なら、繰り返される値はAとBの2種類です。重複を含む行数の5とは異なります。
何を「重複の数」とするか明確にする
架空の元データはA・A・A・B・B・Cの6行です。重複する値が入った行は5行、各値の最初の1行を除く余分な出現回数は3回、繰り返された値の種類は2です。
| コード | 出現回数 |
|---|---|
| A | 3 |
| B | 2 |
| C | 1 |
上表は理解のために集計したものです。操作にはコードが1行ずつ並ぶ元の6行を使います。図はこの例を表す説明図で、画面キャプチャではありません。
集計 → 絞り込み → 全体の件数を数える
- シートを結果の基準に選び「結果を整理」に「集計」を追加します。「まとめる項目」はコードです。
- 「集計方法」を「件数」、名前を「出現回数」にします。
- 下に「絞り込み」を加え、出現回数が1「より大きい」という条件を設定します。
- さらに「集計」を追加します。今度はまとめる項目を空にして「件数」を選び、名前を「重複コード数」にします。
- 上から3ステップの順序を確認し「適用」を押します。
途中を確認する場合は最初の集計だけで一度「適用」し、A=3・B=2・C=1を確認してから設定を再度開きます。重複コードの一覧が欲しい場合は最後の集計を加えず、絞り込みまでで止めます。
最終結果は重複コード数2
| 重複コード数 |
|---|
| 2 |
最後の「件数」が数えるのは元の6行ではなく、前のステップに残ったAとBの2行です。繰り返す値がなければ結果の件数は0になります。
空のコードを数えないようにするには?
最初の集計の前にコードの「空の値以外」で絞り込みます。コードと支店の組み合わせを数えるなら、最初のまとめる項目に両方を指定します。
大文字・小文字や空白の違いは別のグループになる場合があるため、原本の表記も確認してください。すべての顧客を1回ずつ数えたい場合は地域別の重複しない顧客数のように、重複だけに絞る手順を外します。
繰り返しの作業を減らす
シートを接続・比較して、必要な結果を確認できます。
この記事はProプランの利用環境を前提としています。
JOIN SHEETを使ってみる ↗Excel・CSVの作業はPCでご利用ください。新しいタブで開くため、作業中のデータは置き換わりません。
サンプルの検証日:
出典
Counting duplicates with each instance once — Reddit r/excel
繰り返す値を種類ごとに1回数える問題を参考にしています。コード・数値・手順は独自の例で、質問者のデータや製品利用経験ではありません。