不一致・変更の確認

IDのない2つのExcel表を複数列の組み合わせで比較するには?

商品と地域の両方が同じデータだけを共通項目として照合します。IDがない表でも複数列の差分を確認する方法と、その限界を説明します。

説明図:梨の配送地域だけが釜山とソウルで異なる2つの一覧
架空のデータを使った説明図です。実際の画面キャプチャではありません。

IDがなくても商品と地域などの値の組み合わせを照合できます。JOIN SHEETで各列を「値を比較」でつなぐと、選んだ列のすべてが同じ組み合わせを共通項目として表示します。ただし、変更前後を特定するIDがないため「同じ依頼の内容が変わった」とは断定できません。

商品だけでは地域の違いを見落とす

架空の依頼一覧にはリンゴ・ソウル、梨・釜山、ミカン・済州があります。確認一覧には梨・ソウル、リンゴ・ソウル、ミカン・済州があります。商品の種類だけなら両方に同じ果物がありますが、梨の地域が異なります。

依頼の商品 依頼の地域 確認の商品 確認の地域
リンゴ ソウル 梨 ソウル
梨 釜山 リンゴ ソウル
ミカン 済州 ミカン 済州

左右の同じ行が対応するわけではありません。図はこの架空データの説明図で、画面キャプチャではありません。

商品と地域を両方とも比較対象にする

  1. 依頼と確認のシートを読み込み、商品と地域が別々の列であることを確認します。
  2. 依頼の「商品」を確認の「確認商品」へ接続し「値を比較」を選びます。
  3. 「地域」も「確認地域」へ値の比較で接続します。別の結合キーは作りません。
  4. 「結果のプレビュー」で商品・地域の組み合わせと「比較結果」を確認します。

説明図:商品と地域の両方を値の比較でつなぐ手順

地域まで同じ組み合わせだけが共通する

商品と地域 比較結果
リンゴ・ソウル 両方に存在
ミカン・済州 両方に存在
梨・釜山 1つ目のみ
梨・ソウル 2つ目のみ

説明図:共通2組と片方にしかない梨の2組からなる4行の結果

結果は4行です。梨・釜山と梨・ソウルは別々に残ります。釜山の依頼をソウルへ変更した可能性もあれば、釜山の依頼を取り消して別の依頼が追加された可能性もあります。この比較だけでは区別できません。

どの列を比較すればよいですか?

色や規格まで同じときだけ同じ依頼と見なすなら、その列も比較します。作成時刻など毎回変わる値を不用意に含めると、業務上は同じ内容でも別の組み合わせになります。

同じ組み合わせが繰り返される場合は出現回数も反映されます。片方に2回、もう片方に1回なら回数の差も結果に出る場合があります。依頼ごとに変わらない一意の番号があるなら、IDを結合キーにする変更比較が適しています。

自分のデータでも試してみましょう

繰り返しの作業を減らす

シートを接続・比較して、必要な結果を確認できます。

この記事はProプランの利用環境を前提としています。

JOIN SHEETを使ってみる ↗

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

サンプルの検証日:

出典

Comparing two dataframes and getting the differences — Stack Overflow

How to compare two lists with multiple columns and get results from all columns? — Reddit r/excel

複数列の比較という問題を独自の架空データで再構成しました。原文の表や数式を複製したものではなく、質問者の製品利用事例でもありません。