- ベストアンサー
Excelで重複データを調べる方法はありますか?
列の重複データを調べ、隣に設けたセルに○を付ける方法か、名前のセルに色を塗る方法はありますか? 調べても分からなく困っております。どうかよろしくお教えください。 A B 1 田中 一郎 ○ 2 木村 二郎 3 林 三郎 4 田中 一郎 ○ 5 大口 朝子 ○ 6 山田 太郎 7 大口 朝子 ○
- みんなの回答 (5)
- 専門家の回答
質問者が選んだベストアンサー
A列を対象として次の方法で如何でしょうか ■色を塗る方法です。 1.A列を選択 2.書式→条件つき書式 3.「関数が」を選択、=COUNTIF(A:A,A1)>1 4.書式→パターンで色を選択 5.OK ■隣の列に○を付ける 1.B1セルに=IF(COUNTIF(A:A,A1)>1,"○","")を入力して下方向にコピー
その他の回答 (4)
- mu2011
- ベストアンサー率38% (1910/4994)
NO1さんへのご回答で○付けができない理由は、COUNTIF関数の検索セル値がずれているからです。 検索先頭セル値(多分、G6では)を確認して下さい。 又、電話番号の色塗りができない理由としては、電話番号の前後にスペースが入力されていないか確認して下さい。
お礼
本当にありがとうございました。 セル値のズレが原因でした。 皆様のアドバイスのおかげと感謝いたします。 まだまだ疑問が一杯あるので これからもヨロシクお教えください。
- mshr1962
- ベストアンサー率39% (7417/18945)
A列を選択してから「書式」「条件付き書式」で 「数式が」「=COUNTIF(A:A,A1)>1」で「書式」「パターン」を設定する。
以前に同じような回答したことがありますが・・・。 Sub sample1() Dim i As Long, j As Long Columns("B").ClearContents 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).Value <> "" Then Cells(j, 1).Offset(, 1).Value = "○" Cells(i, 1).Offset(, 1).Value = "○" End If Next i Next j End Sub
お礼
早速ありがとうございました。 マクロはまだ勉強をしていなくて、 「未知との遭遇」なのです 早くわかる日が来るよう勉強をいたします。 そのときまで、大切にとっておきます。 ありがとうございました。
- redowl
- ベストアンサー率43% (2140/4926)
B1のセルに =IF(COUNTIF(A:A,A1)>1,"◯","") B2以下に コピペ
補足
早速お答えいただきましてありがとうございました。 お教えいただいたように、データをコピーして新しいシートでするとちゃんとできたのですが、既存のシートでやりましたら、下記の通りに正しく表示をしてくれません。処理をしたいのは既存シートです。それと、氏名を電話番号で処理をしても同じ数式でよろしでしょうか?電話番号でしても氏名で処理したと同じ結果になりました。 G H M N 上山 浩 **-8987 上山 浩 ○ **-8987 ○ 石田 邦弘 ○ **-8145 ○ 武川 孝 **-0393 三田 利幸 **-6605 塚谷 利壽 **-3595 髙村 豊寿 **-8020 髙村 豊寿 ○ **-8020 ○ 小森 猛 ○ **-5048 ○ 小森 猛 ○ **-5048 ○ =IF(COUNTIF(G:G,G5)>1,"○","") =IF(COUNTIF(M:M,M5)>1,"○","") 数式は上記の通りにいれました。 どこがいけないのでしょうか? お忙しいとは存じますがよろしくお願いします。
お礼
ありがとうございました。 色を塗る方法は、既存のシートでもちゃんとできました。なぜか、氏名でなく電話番号でもしてみたのですが、できませんでした???