●顧客IDが無い場合の、顧客名簿の重複削除の方法

  

基本的には、顧客IDが無い場合の、顧客名簿の重複削除の方法・・・・、ですが、顧客IDがあったとしても、入力ミスでダブって入力したり(顧客ID違いで内容が全部同じ)、ですとか、「家族」をバラバラに「独立した1人の顧客として」顧客名簿に入力してしまったり、色んな入力ミスがありますから、一応、そういうミスが無いかも、これでチェックできます。

(01) ●まずは氏名でチェック
単純にピボットで氏名でチェック。
以下のコードも作成。ドリルスルーをしやすくするために。
コマンドボタン化するか、ショートカットキー割り当てをするとラクちん。

ピボット内のセルを一つ選択してから実行する。
ドリルスルーして、2行分を選択したのちクリップボードに送ってくれるので、重複チェック対象をテキストファイルにコピペメモするのに使えます。

ドリルスルー後のコピー行数は必要に応じて変更します。

  
2025/11/07~12の、「xxxxご依頼:DMリスト重複調査→」でフィルタするとわかりやすい。

総合連番 削除区分 部分連番 お届け先名 お届け先郵便番号 お届け先住所 お届け先建物名(アパートマンション名) お届け先電話番号 顧客ID お届け先会社・部門1 お届け先会社・部門2 お届け先名略称カナ 敬称 ご依頼主電話番号 区分01 区分02 区分03 区分04 区分05

  

(02) ●ご家族疑いチェック その1 (=LEFT(E2,1)&RIGHT(G2,1))
「=LEFT(E2,1)&RIGHT(G2,1)」を埋め込む列の名前は「家族疑いフラグ」。
「家族疑いフラグ」の列は、このあと、いろんなチェックフラグ(数式での)に流用します。

※「〇〇県」「〇〇〇市」「番地」を順番に置換で消して、「家族疑いフラグ用住所01」とする。
 その後、「氏名」の先頭1文字と「家族疑いフラグ用住所01」の最後の1文字でチェック。
チェック用のマクロあり。
どれを消すかは、普通に「削除区分」の列で「4番・・真っ先に削除」などをフラグを立てた。

総合連番 氏名 郵便番号 家族疑いフラグ用住所01 住所02 電話番号 顧客ID 家族疑いフラグ お届け先住所 削除区分 部分連番 お届け先会社・部門1 お届け先会社・部門2 お届け先名略称カナ 敬称 ご依頼主電話番号 区分01 区分02 区分03 区分04 区分05
  

  

(03) ●ご家族疑いチェック その2 (=LEFT(E2,1)&RIGHT(G2,1))
「氏名」の先頭1文字と「電話番号」の最後の1文字でチェック。
「家族疑いフラグ」にて。

  

(04) ●氏名の列を複製し、スペース(半角・全角ともに)を削除して、再度、単純比較

ピボットの時点で重複ゼロだった。

  

(05) ●電話番号のみで単純比較

ドリルスルー結果にて、「削除区分」の列だけ移動して、ここにコピペメモ。

総合連番 削除区分 氏名スペースなし区分 氏名 郵便番号 家族疑いフラグ用住所01 住所02 電話番号 顧客ID 家族疑いフラグ お届け先住所 部分連番 お届け先会社・部門1 お届け先会社・部門2 お届け先名略称カナ 敬称 ご依頼主電話番号 区分01 区分02 区分03 区分04 区分05

  

(06) ●住所のみでもチェック
(愛知県、名古屋市、番地、カットしたもので)
28件ほどだったので、手作業でチェック→でも無かったのでスルー。

ピボットは都度消した。

  

(07) ●=RIGHT(G2,1)&RIGHT(I2,1)で住所の最後の1文字と、TELの最後尾の1文字でチェック。
「家族疑いフラグ」にて。

ピボットで調べたら170件ほどもあったので、クリックが大変だから、
ドリルスルーチェックをマクロ化

で、結局チェックしたら怪しいやつはゼロ。

  

(08) ●=RIGHT(G2,2)&RIGHT(I2,2)で住所の最後の2文字と、TELの最後尾の2文字チェック。
「家族疑いフラグ」にて。
住所の最後の1文字と、TELの最後尾の1文字ですでにやってるので、無意味。
やらない。

  

(09) ●=LEFT(H29,2)&RIGHT(E29,1)&RIGHT(L29,1)で、名前の2文字と、住所の最後の1文字、電話の最後の1文字。
「家族疑いフラグ」にて。
 「氏名」の先頭1文字と「家族疑いフラグ用住所01」の最後の1文字ですでにやってるので無意味かも?
やるなら、名前の2文字と、電話の最後の1文字でやる?

  

(10) ●=LEFT(E2,2)&RIGHT(G2,2)で名前の先頭の2文字と、住所の最後尾の2文字チェック。
 「氏名」の先頭1文字と「家族疑いフラグ用住所01」の最後の1文字ですでにやってるので無意味。

やらない。

  

(11) ●ラストに、社長様の削除対象顧客と、「DM絶対禁止のお客様.xls」を照らし合わせる。

完全一致と、姓だけの前方一致と2ケースで。

SELECT *
FROM 4表合体_加工
WHERE (((氏名) Like "氏名01*"
Or (氏名) Like "氏名01*"
Or (氏名) Like "氏名01*"
Or (氏名) Like "氏名01*"
Or (氏名) Like "氏名01*"
Or (氏名) Like "氏名01*"
Or (氏名) Like "氏名01*"
Or (氏名) Like "氏名01*"
Or (氏名) Like "氏名01*"))
ORDER BY 氏名;

  

(12) ●ラストのラストに、4表結合orgや、再度、ほぼいじってない新しい4表結合をしたものでAccessファイルにてチェック。