- ベストアンサー
エクセルでの重複削除について教えてください。
仕事での会員のデータをまとめているのですが、数が多すぎて重複しているデータを見つけられません。 データは名前・住所・電話番号etcなのですが、住所が変更されているのに、電話番号と名前は変わってないという例がたくさんあるようです。件数が数千件になっているので、目で探すのは大変です。早急に作らなければならない書類なのですが、技術者がいない為、大変困っています。簡単に削除できる方法があったら教えてください。
- みんなの回答 (5)
- 専門家の回答
質問者が選んだベストアンサー
次の方法は如何でしょうか。 1.表全体を選択 2.書式→条件つき書式 3.「数式が」を選択し、=COUNTIF($C$1:$C1,$C1)>1を入力(電話番号列を想定) 4.書式→パターン→任意の色を選択 5.OK ※二つ目の重複行が色付けされる。 6.電話番号列先頭をクリック→データ→並び替え ※項目削除は目視確認し、行削除する
その他の回答 (4)
#1です。 下記の△の部分を電話番号の入力されている列番号にしてやれば、重複して いればその行の△列目に最初にそのデータが出現した行以外の行を削除します。 Sub test() Dim i As Long, j As Long For j = 1 To Range("A65536").End(xlUp).Row For i = Range("A65536").End(xlUp).Row To j + 1 Step -1 If Cells(j, △).Value = Cells(i, △).Value And Cells(i, △).Offset(, 1).Value = "" Then Rows(i).Delete Shift:=xlUp End If Next i Next j End Sub
- imogasi
- ベストアンサー率27% (4737/17069)
これは経験から (A)名前 (B)住所 (C)電話番号 それぞれの列だけで、ソートし、同じ内容(氏名なら氏名)の同じ塊りの行を目視により、住所、電話番号も勘案して、人間が常識や全知能を働かせてチェックしないといけない。営業担当がやるのが良いが。 関数や条件付き書式で、事たれりではダメ。ビジネスでは、ケースによってはトラブルや訴訟になりかねない。氏名同一、同一人と即断も危険。 それを(A)(B)(C)各々で繰り返すこと。2-3千件ならすぐ終わります。しかし通常は疑問点が相当数出て、問い合わせしたりする必要もあるので、至急は難しかろう。ある程度確実な行だけで、見切り発車せねばならないかもしれない。 重複行(の列だけ)に色をつけるのは 条件付書式で、数式が、=OR(A2=A3,A1=A2)と入れてパターン色を設定 する。チェックの省力化の足しになる。 >住所が変更されているのに、電話番号と名前は変わってないという 住所変更したら、氏名が変わるの?電話番号も変わらない場合あると思うよ。
- mshr1962
- ベストアンサー率39% (7417/18945)
そのブック内に新しいワークシートを作成して A1 電話番号 A2 ="=*" として「データ」「フィルタ」「フィルタオプションの設定」 「指定した範囲」に「●」 「リスト範囲」元のシートの全範囲 「検索条件範囲」「$A$1:$A$2」 「抽出範囲」「$A$3」 「重複するレコードは無視する」にチェックしてOKする。 3行目がに項目名となり、4行目以降にデータが抽出される。 この内容を新しいブックにコピーして保存する。 現行のブックは念のために残しておいてください。
>重複削除 とタイトルにありますが、同じ個人名で重複データが5件あった場合に どのデータを残すのでしょうか?判断基準があるのでしょうか? それとも重複しているデータを強調すればいいのでしょうか? 仮ですが、A列に名前が入っているとしてA列の値を上から順番に見て重複 していればその行のB列に最初にそのデータが出現した行を入力していく物 です。 Sub test() Dim i As Long, j As Long For j = 1 To Range("A65536").End(xlUp).Row For i = Range("A65536").End(xlUp).Row To j + 1 Step -1 If Cells(j, 1).Value = Cells(i, 1).Value And Cells(i, 1).Offset(, 1).Value = "" Then Cells(j, 1).Offset(, 1).Value = j Cells(i, 1).Offset(, 1).Value = j End If Next i Next j End Sub
補足
説明不足ですみません・・・。 A列に住所・B列に名前・C列に電話番号が入力されていて、電話番号を基準に重複を探しています。 住所が変更されているのはもちろんですが、名前も漢字で入力されていたり、平仮名で入力されていたりと、同じ人物名でもバラバラな状態です。昔からのデータですので、しっかりとした管理を怠ってしまっていました・・。重複の電話番号があった場合、住所・名前は関係なく、一つだけ残して重複したものは削除したいのですが、簡単にできる方法はありませんか? よろしくお願い致します。