一セルに複数のデータが格納され、それを分割して、配列型にしたい。

抽出結果
表データの抽出アクティビティで上記の通りの、データテーブル抽出結果となりました。次の処理で、コレクションの各要素の繰り返し処理をしたいので、以下の様な、配列型に変換?したいのですが、どこを探しても、これぞという方法が見つからず、苦慮しております。ご教授頂けます様お願い申し上げます。一行に、値が複数格納されており、改行はされております。どの様に切り分けたら良いのかがわかりません。上記の画像では、皆データは3文字になっておりますが、3文字とは限らず、4文字の事もあれば、6文字の様なケースもあり、文字数は不確定です。だた、データ別には、必ず改行されたデータを取得することはできます。
配列型にしたい
以上、宜しくお願い申し上げます。

こんにちは
これが役に立つかもしれません
20220814_1.zip (10.0 KB)

1 Like

こんにちは

データテーブルをdt,当該行の名称を仮に"Column1"、結果をSrting配列型のresultArrayとすると

resultArray = dt.AsEnumerable.SelectMany(Function(r) r("Column1").ToString.Split(vbCrLf.ToCharArray,StringSplitOptions.RemoveEmptyEntries)).ToArray()

で取得できます。

もし結果の重複を排除したいのであれば

resultArray = dt.AsEnumerable.SelectMany(Function(r) r("Column1").ToString.Split(vbCrLf.ToCharArray,StringSplitOptions.RemoveEmptyEntries)).Distinct().ToArray()

にします。

2 Likes

Ken Infield様
感動しました。美しいワークフローです。実装することができました。ありがとうございます!
aigahome拝

1 Like

Yoichi様
いつもありがとうございます!これも、実装する事ができました。まさに、プロスキルの真髄を見た気がします。
aigahome拝