Excelファイルを扱うUiPathのフローを構築しようとしています。具体的には、2つのExcelファイルを処理し、それらのファイル名を照合して、一致しないファイル名のデータを抽出したいと考えています。
Excelリストに複数のファイル名が含まれています。
マスタデータファイルにすでに存在するファイル名が含まれています。
Excelリストのファイル名とマスタデータのファイル名を照合し存在しないファイル名のみExcelリストに残したファイルを作成したいです。
2つのファイルを読み込んだ後のif文より作成をすることが出来ません。
Yoichi
(Yoichi)
2
こんにちは
入力データの仕様にも依存しますが、ループや条件分岐を使用せずとも、Enumerable.Exceptメソッドで抽出できる可能性があります。可能であれば、ダミーの入力データと出力データを共有いただくと良いかと思います。
こんにちは。
データを添付いたします。
リスト.xlsxとマスタデータ.xlsxのファイル名を照合して、一致しないファイル名のみを残したいです。完成ファイルも添付させていただきます。
新しいフォルダー.zip (20.7 KB)
Yoichi
(Yoichi)
4
こんにちは
一列だけのデータであれば以下で可能です。表が複数列ある場合は、もう少し工夫が必要です。
Sample20240311-2.zip (23.8 KB)
ありがとうございます。
申し訳ございません。実際のリストは2列になります。
どこを追記すればよろしいでしょうか。
Yoichi
(Yoichi)
6
その場合照合する対象は、1列目と2列目双方になりますか?それとも1列目だけでしょうか?
照合する対象は1列のみになります。
よろしくお願いいたします。
Yoichi
(Yoichi)
8
そうであれば以下試し下さい。
dtList.AsEnumerable.Where(Function(r1) not dtMaster.AsEnumerable.Any(Function(r2) r1("ファイル名").ToString()=r2("ファイル名").ToString())).ToArray()
Sample
Sample20240311-2 (2).zip (23.8 KB)
ありがとうございます。
実際のデータで試してみたのですが、画像の箇所でエラーになってしまいます。
Yoichi
(Yoichi)
10
入力のDataTableが空(null)です。入力(読み込み)を見直してください。
ありがとうございます。
修正したところ想定通りの動きになりました。