同じ会社内でメールまたは電話が一致する相手を探す
会社とメール、会社と電話で別々に照合し、結果をまとめます。連絡先が空欄の行を除き、メールと電話の両方で一致した相手も1回だけ残します。
同じ会社の中で、メールか電話のどちらかが一致する相手を探すには、照合を2回に分けます。会社とメールで照合した結果と、会社と電話で照合した結果から、IDの組だけを保存します。それらを縦に追加するときに重複を除けば、両方で一致した相手も1回だけ残せます。1回の結合にメールと電話を両方指定すると、どちらも一致する相手に絞られてしまいます。
元の連絡先と2つの照合結果
次は架空の原本です。G1とG2は別の会社で、メールアドレスは例示用です。∅は空のセルです。
Leads
| LeadID | Company | Phone | |
|---|---|---|---|
| L1 | G1 | a@example.invalid | 010-0000-0001 |
| L2 | G1 | x@example.invalid | 010-0000-0002 |
| L3 | G2 | a@example.invalid | 010-0000-0003 |
| L4 | G1 | ∅ | ∅ |
Contacts
| ContactID | Company | Phone | |
|---|---|---|---|
| R1 | G1 | a@example.invalid | 010-0000-0001 |
| R2 | G1 | b@example.invalid | 010-0000-0002 |
| R3 | G2 | a@example.invalid | 010-0000-0099 |
| R4 | G1 | ∅ | ∅ |
以下のEmailMatches・PhoneMatchesは、これから2回の照合で作る中間結果です。EmailMatchesには会社とメールが一致する組、PhoneMatchesには会社と電話が一致する組が入ります。最後に同じIDの組を1回だけ残すため、どちらもLeadIDとContactIDだけにして保存します。
表の∅は空セルを示す記号で、入力する文字ではありません。
EmailMatches
| LeadID | ContactID |
|---|---|
| L1 | R1 |
| L3 | R3 |
PhoneMatches
| LeadID | ContactID |
|---|---|
| L1 | R1 |
| L2 | R2 |
メールと電話でそれぞれ照合し、結果をまとめる
- LeadsとContactsを読み込み、両側のCompany・Email・Phoneをテキストにします。LeadIDとContactIDは各原本内で行を一意に識別するIDです。この例では前後の空白や英字の大文字・小文字を無視せず、そのまま比較します。
- 最初はCompany同士とEmail同士を結合し、一致する行だけを残します。両側のEmailのフィルターで「空白ではない」を選び、それぞれ「適用」を押します。別会社の同じメールと一致しないよう、Companyの条件も必ず残します。
- 両シートのCompany・Email・Phoneを出力から隠し、LeadID・ContactIDの2列だけにします。L1・R1とL3・R3の2行を確認し、EmailMatchesとしてExcelに保存します。
- 2回目はCompanyの接続を残し、Emailの接続を削除してPhone同士を接続します。Emailのフィルター条件を解除して適用し、両側のPhoneには「空白ではない」を設定して適用します。一致する行だけを残し、同じ2列のL1・R1、L2・R2をPhoneMatchesとして保存します。
- 保存した2つの結果を新しい作業に読み込みます。列名と列数はLeadID・ContactIDの2列でそろえます。上下の+接続点を結んで「完全に同じ行を1行だけ残す」を選び、最終結果が3組になることを確認して保存します。
どちらかが一致する3組
L1・R1は両方の照合に出ますが、最後は1回だけ残ります。L2・R2は電話、L3・R3はメールだけが一致します。連絡先が空のL4・R4と、会社が異なるL1・R3などは対象外です。
| LeadID | ContactID |
|---|---|
| L1 | R1 |
| L2 | R2 |
| L3 | R3 |
一致候補が同一人物とは限りません
条件に合う候補をすべて返すので、1つのLeadIDに複数のContactIDが対応することもあります。メール優先のルールや同一人物の自動判定はありません。電話の区切り記号・国番号などは原本のコピーで統一方針を決めます。空文字や空白だけの連絡先も両側で除外してください。重複除去は出力行全体を比べるため、照合方法やメールの列を一緒に保存すると、同じIDの組が2行残る場合があります。
自分のファイルで始めましょう
JOIN SHEETを使ってみる ↗Excel・CSVの作業はPCでご利用ください。
新しいタブで開くため、作業中のデータは置き換わりません。
サンプルの検証日:
出典
Merge 2 tables in Power Query based on multiple conditions (Microsoft Fabric Community)
原文はPower QueryでColumn1が一致し、Column2またはColumn3が一致する行を結合する質問です。2回の結合結果を追加する回答がありますが、投稿者は後の返信でもOR条件について疑問を残しています。同じ条件を会社・メール・電話に置き換え、JOIN SHEETで保存して読み直す手作業も含めています。 例のデータは説明用に別途作成したもので、原文の投稿者による製品利用の感想や推薦ではありません。