データテーブルで特定列の値が重複した場合に行数が下の行を削除したい

お世話になっております。

現在複数システムの登録内容を取得してExcelの管理台帳に登録するロボットを作成しています。
そこで、データテーブルで特定の値が重複した時のみ行を削除するやり方を教えて頂いているでしょうか。

システムから取得する範囲を当日等で区切りづらいため、大枠で複数日分取得して、Excelにマージする際に重複行を削除しようと考えています。

特定の値、としているのは、管理台帳上でも人が更新するため1行単位で比較すると重複行にならないためです。

以下の手順でExcel管理台帳を作成していきたいです。
1.Excel台帳に記載済みの内容をデータテーブルに取り込む・・・A
2.複数システムの登録内容をデータテーブルに取り込む・・・B
3.BをAの下にマージする
4.ID列で重複があれば、重複している行数が下の行(マージしたB側の行)を削除 ★知りたい

画像だと以下のイメージです。

よろしくお願いいたします。

こんにちは

マージ後のDataTableをdtとすると

dt = dt.AsEnumerable.GroupBy(Function(r) r("ID").ToString).Select(Function(g) g.First()).CopyToDataTable

で可能です。

1 Like

ありがとうございます!
試してみます!