同じ会社IDに異なる電話番号がないか調べる
会社ごとに電話番号が何種類登録されているかを数え、確認が必要な会社を抽出します。同じ番号の繰り返しと、異なる番号の登録を区別する方法です。
同じ会社IDに異なる電話番号が登録されていないか調べるには、会社と電話番号の組を1行ずつにまとめ、その行を会社別に数えます。同じ番号が従業員の行に何度出ても1種類です。2種類以上ある会社を確認対象にできます。
同じ番号の繰り返しと異なる番号の混在
従業員ごとの会社情報から必要な2列を取り出した架空の表です。111・222・333は説明用の番号です。F1には111が2行、222が1行あり、F2には333だけが2行あります。F3の空欄は今回の不一致検査から外し、欠損値として別に確認します。
表の∅は空セルを示す記号で、入力する文字ではありません。
CompanyPhones
| CompanyID | Phone |
|---|---|
| F1 | 111 |
| F1 | 111 |
| F1 | 222 |
| F2 | 333 |
| F2 | 333 |
| F3 | ∅ |
会社と電話番号の組をまとめてから数える
- CompanyPhonesを読み込み、CompanyIDとPhoneの型をテキストにします。Phoneのフィルターアイコンから条件を「空白ではない」にし、「適用」を押します。
- CompanyPhonesを結果の基準に選び、「結果を整理」を開きます。「集計」を追加し、「まとめる項目」でCompanyIDとPhoneを1つずつ選びます。「集計方法」は「件数」のまま、「結果の項目名」にOccurrencesと入力します。組ごとに1行にする場合も、集計する値が1つ必要です。
- 次の「集計」を追加し、今度はCompanyIDだけをまとめます。「集計方法」は「件数」のまま、「結果の項目名」にVariantsと入力します。Occurrencesの合計ではなく、最初の集計でできた組の行数を数えます。
- Variantsが1より大きい行を「絞り込み」で選び、「適用」を押します。F1だけが残ることを確認し、元の111と222のどちらが有効かを調べます。
F1に2種類の電話番号があります
F1のVariantsは2です。3になる場合は従業員の行数を数えているので、2回目にOccurrencesを合計していないか確認してください。F2は同じ番号しかないため対象外です。
| CompanyID | Variants |
|---|---|
| F1 | 2 |
修正する前に会社の情報を確認
番号が2種類あっても、支店ごとの連絡先や変更履歴なら間違いとは限りません。また、この集計では文字列が違えば別の番号として数えます。ハイフンや国番号の書き方が混在している場合は、原本のコピーで表記をそろえてください。
空欄のため除外したF3も、確認が不要という意味ではありません。住所や名前も調べたい場合は、Phoneをそれぞれの列に置き換えて別々に集計すると、どの情報が食い違っているかを確認できます。
自分のファイルで始めましょう
JOIN SHEETを使ってみる ↗Excel・CSVの作業はPCでご利用ください。
新しいタブで開くため、作業中のデータは置き換わりません。
サンプルの検証日:
出典
Microsoft Access Question: I want to identify mistmatched data in the same query/table (Microsoft Q&A)
原文は同じ会社IDの電話・住所の不一致を探すMicrosoft Accessの質問で、投稿者が解決を確認しています。ここではExcel・CSVの独立した表に置き換え、電話番号が異なるIDを探します。Accessのテーブル設計や原本の更新は扱いません。 例のデータは説明用に別途作成したもので、原文の投稿者による製品利用の感想や推薦ではありません。