お世話になっております。
データテーブルをフィルターし、抽出された行を削除したいと考えています。
条件ですが以下の条件に合致する行を削除したいと考えています。
・「No」が重複、「締切日」が空欄、「番号」が重複していない
こちらの処理方法について知見がある方教えていただきたいです。
また、絶対データテーブルで処理したいとは考えてはいないので別の方法でも問題ございません。
以上になります。宜しくお願い致します。
お世話になっております。
データテーブルをフィルターし、抽出された行を削除したいと考えています。
条件ですが以下の条件に合致する行を削除したいと考えています。
・「No」が重複、「締切日」が空欄、「番号」が重複していない
こちらの処理方法について知見がある方教えていただきたいです。
また、絶対データテーブルで処理したいとは考えてはいないので別の方法でも問題ございません。
以上になります。宜しくお願い致します。
こんにちは
処理後を見ると締切日が空欄のものが含まれていますが、結果の間違いか、あるいは一つでも空欄でないものがあればすべて残すのか、あるいは別のルールがあるのか、いずれになりますでしょうか?
とりいそぎ締切日の扱いを除外したサンプルを添付します。(結果は上記通りになります)
dt.AsEnumerable.GroupBy(Function(r) r("No").ToString).Where(Function(g) g.Count=1 OrElse g.GroupBy(Function(r2) r2("番号").ToString).Count()=1).SelectMany(Function(g2) g2).CopyToDataTAble
Sample
Sample20240610-7.zip (9.6 KB)
そうであれば以下いかがでしょうか?(上記サンプルだけで結果成否がよくわかりませんが)
dt.AsEnumerable.GroupBy(Function(r) r("No").ToString).Where(Function(g) (g.Count=1 OrElse g.GroupBy(Function(r2) r2("番号").ToString).Count()=1) AndAlso g.Any(Function(r3) r3("締切日").ToString<>"")).SelectMany(Function(g2) g2).CopyToDataTAble
Sample20240610-7 (2).zip (9.7 KB)
@Yoichi さん
教えていただきありがとうございます!
実装したところ解決できました!
ありがとうございます。
This topic was automatically closed 3 days after the last reply. New replies are no longer allowed.