web-dev-qa-db-ja.com

重複する行を削除し、日付列に基づいて最新の行を保持する

次の形式のExcelの膨大なデータリスト(250.000行以上)があります。

Number  Value1  Date            Value2
40325   1       21/01/11 18.10  2
65485   3       22/01/11 16.47  2
40325   9       25/01/11 19.00  0
70912   8       27/01/11 16.43  2

列1(番号)に基づいて重複する行を削除する必要があり、Excelの「データ/重複の削除」を使用してこれを実行しても問題はありませんが、最も古い日付の行を削除し、最新のものを保持する必要があります。 、列3(日付)に基づきます。

上記の例では、行3が最新なので、行1を削除して行3を保持する必要があります。

重複した4.800行があるので、手動での並べ替え/削除は非常に時間のかかる作業になります。

何か良い提案はありますか?そして私を助けるためのトリック?よろしくお願いします:)

4
Bjarke Mønsted

コツは、Remove duplicatesを使用する前にテーブルをソートすることです。 Excelは常に、複製された行の最初のデータセットを保持します。連続するすべての行が削除されます。

あなたの場合:

  1. ヘルパー列を設定し、数値を入力します。 1から始めて、テーブルの最後まで自動入力を使用します
    enter image description here

  2. 日付列が日付としてフォーマットされており、Excelが日付として認識していることを確認してください。そうしないと、並べ替えが機能しません

  3. Custom sortを選択します(Excelのバージョンによって異なります)。テーブル全体を日付列で--​​最新から最古の順に並べ替えます。それは重要な部分です
    enter image description here

  4. Remove duplicatesを使用して、重複をチェックする基準を保持しているNumber列のみを選択します。他のすべての列の選択を解除します
    enter image description here

  5. もう一度[Custom Sort]を選択し、最初に追加したヘルパー列でテーブルを並べ替えて、元の行の順序に戻します
    enter image description here

8
nixda