同じコードが両方の一覧にあるのに、件数が違うときは?

同じコードを1件ずつ照合し、片方の一覧に余っている分を見つけます。コードの種類だけでなく、重複を含む件数も確認できます。

両方の一覧にある値の重複回数の違いを調べる 説明図
架空のデータを使った説明図です。実際の画面キャプチャではありません。

両方の一覧に同じコードがあっても、それぞれの件数が異なることがあります。JOIN SHEETで結合キーを設定せず「値を比較」を使うと、同じ値を1件ずつ対応させて余った分を確認できます。

存在確認だけでは見逃す重複

ListAはR1が2件、R2が1件です。ListBはR1が1件、R2が2件です。値の種類だけを見ると同じですが、件数を対応させるとAのR1とBのR2が1件ずつ余ります。

表中の∅は空欄を示す説明用の記号で、入力する文字ではありません。

ListA

CodeA
R1
R1
R2

ListB

CodeB
R1
R2
R2

結合キーを設定せずにコードを比較する

  1. 列名とともに2つの一覧を読み込みます。重複が比較対象なので、事前の重複削除は行いません。
  2. CodeAとCodeBを結びます。線上の条件メニューで「VS」を押して「値を比較」に切り替え、別の結合キーは追加しません。
  3. 「結果のプレビュー」で一致した行と片側だけの行を確認します。
  4. 余った分だけを保存する場合は、「結果を整理」で「絞り込み」を追加します。「項目」は比較結果、「条件」は「等しくない」、「値」は「両方に存在」を選び、「適用」を押します。全比較の件数とフィルター後の件数を区別してください。

接続と条件の設定 説明図

片方の一覧に余った1件ずつを確認する

結果は4行で、「両方に存在」が2行、「1つ目のみ」と「2つ目のみ」が1行ずつです。「両方に存在」を除くと、件数が合わなかった2行だけが残ります。元の各一覧は3件なので、一致した2件と余った1件を合わせれば元の件数と一致します。

比較結果 CodeA CodeB
両方に存在 R1 R1
1つ目のみ R1 ∅
両方に存在 R2 R2
2つ目のみ ∅ R2

結果で確認する点 説明図

出現回数と記録の識別は別

この結果だけでは、R1のどの取引が欠けたのかまでは分かりません。個々の記録を特定するには取引IDなどの固有キーが必要です。コードと日付の組み合わせを比較するなら、比較対象の列を追加します。

自分のファイルで始めましょう

JOIN SHEETを使ってみる ↗

Excel・CSVの作業はPCでご利用ください。
新しいタブで開くため、作業中のデータは置き換わりません。

サンプルの検証日:

出典

How to compare two columns while accounting for duplicates within a column (Reddit r/excel)

原文は、それぞれの列に重複がある場合に、2列の差を調べる方法を質問しています。 上の表と手順は、この質問を参考に別途作成した架空の例です。質問者の実データや製品の利用体験ではありません。