• ベストアンサー

エクセルで同じレコードの削除の仕方

    A B 1| 日本 一郎 | 東京 |  2| 日本 一郎 | 東京 | 3| 日本 二郎 | 静岡 | 4| 日本 二郎 | 大阪 | 5| 日本 三郎 | 奈良 | 6| 日本 四郎 | 兵庫 | 7| 日本 四郎 | 兵庫 | 上記のようなデータがある場合に 1| 日本 二郎 | 静岡 | 2| 日本 二郎 | 大阪 | 3| 日本 三郎 | 奈良 | のように、重複したレコードを削除したいのですが、 どのようにすればいいのでしょうか? エクセルはちょっと古く2000です できれば、簡単な方法でお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.5

回答2です。 補足の例で作業列を二つ使うやり方です。 D1に「=A1&B1&C1」(名前&出身地&生年月日)として下へオートフィル。 E1に「=IF(COUNTIF(D:D,D1)=1,1,0)」として下へオートフィル。 表全体を選択して「データ」-「フィルタ」-「オートフィルタ」。 E列から1のものだけを選択します。あるいは0を選択して行削除します。 以上です。

runner0023
質問者

お礼

お礼が大変送れてどうもすみません。 当たり前ですが、うまくいきました。 どうもありがとうございます。 何分、500から600件のデータのうち更新が20から30件のため いままで、大変でした。大変助かりました。

その他の回答 (4)

  • imogasi
  • ベストアンサー率27% (4737/17069)
回答No.4

>重複したレコードを削除したいのですが 質問例からどういう風に考えると 1| 日本 二郎 | 静岡 | 2| 日本 二郎 | 大阪 | 3| 日本 三郎 | 奈良 | になるの。 実例もよいが、しっかり文章で説明しないと。 A列の氏名で同じ氏名のものの最初を抜き出すなら 作業列を使うなら、「imogasi方式」が使えます。Googelででも照会すれば、たくさん私の回答したものが出ます。また他の回答者の、主に関数を使った、抜き出し方法が出ます。 例データ Sheet1 A-C D列は作業列。 下記データは第2行目から始める  日本 一郎   東京  1  日本 一郎   東京   日本 二郎   静岡  2  日本 二郎   大阪   日本 三郎   奈良  3  日本 四郎   兵庫  4  日本 四郎   兵庫  ーーーー D2に=IF(COUNTIF($A$2:A2,A2)=1,MAX($C$1:C1)+1,"") ト入れて下方向に式を複写する。 結果 上記 初出の氏名行に連番を振っている。 ーーー Sheet2に行って A1に =INDEX(Sheet1!$A$2:$D$100,MATCH(ROW()-1,Sheet1!$C$2:$C$100,0),COLUMN()) B1まで式複写 A1:B1をA4:B4まで式複写 結果  日本 一郎   東京   日本 二郎   静岡   日本 三郎   奈良   日本 四郎   兵庫  ===== 関数で抜き出しは式が面倒。 フィルタオプションの設定で、「重複するレコードは無視する」にチェックを入れて、フィルタを実行するのが楽。 判らなければGoogleで「エクセル フィルタオプションの設定」で照会のこと。

  • A88No8
  • ベストアンサー率52% (836/1606)
回答No.3

こんにちは  泥臭いやり方の一例です。  1行目は項目行として予約して、2行目のD、E、F列に作業列を作ります。  次に各セルに下記の式を入れて最下行までコピーしE列にフィルター機能を使って「ALIVE」で抽出し、結果を他のシートへコピーする。 C列2行 =A2&B2 D列2行 =C1=C2 E列2行 =IF(OR(D2=TRUE,AND(D2=FALSE,D3=TRUE)),"","ALIVE")

回答No.2

確認ですが、     A B 1| 日本 一郎 | 東京 |  3| 日本 二郎 | 静岡 | 4| 日本 二郎 | 大阪 | 5| 日本 三郎 | 奈良 | 6| 日本 四郎 | 兵庫 | のように重複した行のうちのひとつを残すのではないのですね?

runner0023
質問者

補足

早速の回答ありがとうございます。 説明不足で、どうもすみません。 そうです、重複した行は残しません。    名前   出身地    生年月日 1 日本一郎   東京   平成10年1月1日 2 日本一郎   東京   昭和20年1月1日 3 日本二郎   静岡   昭和30年2月1日 4 日本二郎   大阪   昭和30年2月1日 5 日本三郎   奈良   昭和10年10月10日 6 日本四郎   兵庫   昭和40年6月1日 7 日本四郎   兵庫   昭和40年6月1日 8 日本四郎   兵庫   昭和50年5月5日 このような場合、 行 1、2のように名前と出身地の列が同じでも生年月日の列が違うものは残します。 行 3,4のように名前と生年月日の列が同じでも出身地の列が違うものは残します。 行 5のようにすべての列が違うものも残します。 行 6,7のように、名前、出身地、生年月日の列がすべて同じものは残しませんが、 行 8のように生年月日の列が違うものだけは残します。 したがって、残すデータは質問の所とちょっと違いますが 1 日本一郎   東京   平成10年1月1日 2 日本一郎   東京   昭和20年1月1日 3 日本二郎   静岡   昭和30年2月1日 4 日本二郎   大阪   昭和30年2月1日 5 日本三郎   奈良   昭和10年10月10日 8 日本四郎   兵庫   昭和50年5月5日 わかりますでしょうか? よろしくお願いします。

  • koko88okok
  • ベストアンサー率58% (3839/6543)
回答No.1

下記URLのページの「同じシート内で絞り込む(フィルタオプションの設定を使う)」の項をご参照下さい。 Excel2000でも同じ操作手順でOKと思います。 「Excel(エクセル)実用編:重複データのチェック&重複なしのデータ抽出」 http://www.eurus.dti.ne.jp/~yoneyama/Excel/jituyou/jyufuku.htm

関連するQ&A

専門家に質問してみよう