
Power BIやExcelでPower Query(パワークエリ)を利用しているときの必須スキル「重複行」の削除についてご紹介します!
主に以下のふたつのケースがあると思います。
- 重複する行のうち、上の行(古い行)を残したい。
- 重複する行のうち、下の行(最新行)を残したい。
これらの両方のケースについて紹介していきます!
今回は説明のため、以下のようなダミーデータを用意しました。

上のデータでは「五十嵐 卓哉」と「田中 夕佳」の2名が被っており、それぞれメールアドレスの@マークの手前が異なってます。
上の行(古い行)を残したいとき
まずは、上の行(古い行)を残す場合です。以下の画像のふたつを残します。

メールアドレスの@の手前が「_01」になっている方を残します。
まず、上記のリストをPower Queryで読み込みます。
「氏名」の列名を右クリックし、「重複の削除」を選択します。

すると、上の行(古い行)だけが残りました!

下の行(最新の行)だけを残したいとき
次に、下の行(最新の行)だけを残します。

メールアドレスの@の手前が「_02」になっている方を残します。
リストをPower Queryで読み込んだら、「列の追加」から「インデックス列」を選択します。

すると一番右の列に0もしくは1から始まるインデックス列が追加されます。

次に追加されたインデックス列の矢印マークから「降順で並べ替え」を選択します。

降順に並び変えた直後に、上の数式を見ると上記のようになっています。

数式を以下のように変更します(赤字部分)
変更前:= Table.Sort(追加されたインデックス,{{“インデックス”, Order.Descending}})
変更後:= Table.Buffer(Table.Sort(追加されたインデックス,{{“インデックス”, Order.Descending}}))

最後に「氏名」の列を右クリックして「重複の削除」をクリックします。

重複が削除され、下の行(最新の行)だけが残りました!
メールアドレスの@の前が「_02」の行だけが残っていることが確認できました。

以上で重複の削除は完了です!お疲れ様でした!