- ベストアンサー
エクセル 重複データの抽出
エクセルを使って重複データをチェックしようと思っていCOUNTIFで試したのですがうまくいきません・・・ご存知の方教えてください。m(__)m A B C D E F 店番 顧客番号 氏名(カナ) 電話番号 住所1 住所2 という表の電話番号が重複する先を抽出したいのです。データ件数は約3000件ほどあります。できれば重複したデータは別のシートに店番順に表示をしたいのですが関数でできるのでしょうか?
- みんなの回答 (5)
- 専門家の回答
質問者が選んだベストアンサー
シート1にお示しの表があるとして2行目からデータが下方にあるとします。 重複データでも最初の1件を残して残りを別に表示させるのか、それとも重複していればすべてを別に表示させるのか、どちらを選ぶかによって操作法が異なりますね。 シート1ではG列を作業列としてG2セルには前者の選択の場合には次の式を入力し下方にオートフィルドラッグします。 =IF(A2="","",IF(COUNTIF(D$2:D2,D2)>1,MAX(G$1:G1)+1,"")) また、後者の選択の場合にはG2セルには次の式を入力します。 =IF(A2="","",IF(COUNTIF(D:D,D2)>1,MAX(G$1:G1)+1,"")) シート2ではA2セルに次の式を入力しF2セルまでオートフィルドラッグしたのちに下方にもオートフィルドラッグします。 =IF(COUNTIF(Sheet1!$G:$G,ROW(A1))=0,"",INDEX(Sheet1!$A:$F,MATCH(ROW(A1),Sheet1!$G:$G,0),COLUMN(A1))) これで、シート2には重複のデータが表示されます。 なお、シート1で重複のデータを削除する場合でしたらG列を重点にオートフィルタで昇順などで並べ替えて該当の行をまとめて消去すればよいのですが、シート2でのデータが消えてしまいますので、シート2のAからF列を選択してコピーしたのちにA1セルをアクティブセルの状態のままで右クリックし、「形式を選択して貼り付け」で「値」を選択して貼り付けをすればよいでしょう。
その他の回答 (4)
- ka-zu-mama
- ベストアンサー率15% (2/13)
別の質問に同じようなものがありました。http://okwave.jp/qa3678003.html?rel=innerHtml&p=right&l=3 最新の回答でimogasiさんの回答がこの質問にあうと思うのでお知らせします。
お礼
ありがとうございます。参考にします。
- a987654
- ベストアンサー率26% (112/415)
NO2です。御免なさい一か所修正です。 > H1セルに =COUNTIF(D1:Dnnn,D1) Dnnnは最終行 H1セルに =COUNTIF(D$1:D$nnn,D1) Dnnnは最終行 D$1:D$nnn:絶対アドレスにしてください。
- a987654
- ベストアンサー率26% (112/415)
1.電話番号でソート 2.1行目からデータがあるとして H1セルに =COUNTIF(D1:Dnnn,D1) Dnnnは最終行 H1セルをオートフィル 3.シート丸ごとで別シートにコピー 4.コピーされたシートでH列を値G列に値で複写してH列を削除 5.G列:降順、D列:昇順または降順でソート 6.G列が1である行を削除 7.A列昇順でソート 以上
お礼
ありがとうございました。Dnnnが最終行とは知らなかったので参考になりました。
- tom04
- ベストアンサー率49% (2537/5117)
こんばんは! 色々方法はあるかと思いますが・・・ D列の電話番号の重複だけで判断すれば良いわけですね? 一例です。 G列を作業用の列とさせてもらって、 G2セルに =IF(COUNTIF($D$2:D2,D2)=2,"○","") と数式を入れ、オートフィルハンドルの(+)マークでダブルクリックします。 そして、オートフィルタで「○」を抽出し 別Sheetにコピー&ペーストし、店番順で並び替えをしてはどうでしょうか? 以上、参考になれば幸いですが、 他に良い方法があれば読み流してくださいね。m(__)m
お礼
ありがとうございました。勉強になりました。
お礼
ありがとうございます。重複データをすべて抽出したかったのでわかりにくい質問でしたのに回答していただいてすごく参考になり、勉強になりました。