Excelから読み込んだ文字列を10個ずつカンマで羅列したい

いつもお世話になっております。

Excelから読み込んだ文字列を10個ずつカンマでつなげたいです。
読み込む文字列はいくつあるかわかりません。
データテーブルに読み込み→分割しファイルに吐き出し→再読み込み は実現できそうですが、もう少し簡単な方法ないでしょうか。
(例えば上記でファイルに出力せずデータテーブルを任意の行数で分割し新しいデータテーブルを作成する等 ←これもいくつデータテーブルができるか分からないので難しそう)

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

こんにちは

具体的な入力例と、期待する出力例を記載いただくと、より良いかもしれません。

無題

上記のようなExcelを読み込み、
①"aaa",“bbb”,“ccc”,“ddd”,“eee”,“fff”,“ggg”,“hhh”,“iii”,“jjj”
②"kkk",“lll”,“mmm”,“nnn”,“ooo”,“ppp”
という2つの新たな文字列を作成したいです。

先に記載忘れていましたが、全文字列をダブルクォーテーションでくくる処理もしたいです。

こんにちは

一行で書くと以下のような感じで、いかがでしょうか?

result =  Enumerable.Range(0,1+CInt(Math.Floor((dt.Rows.Count-1)/10))).Select(Function(idx) String.Join(",", dt.AsEnumerable.Where(Function(r,i) CInt(Math.FLoor(i/10))=idx).Select(Function(r) """"+r("文字列サンプル").ToString+""""))).ToArray()

resultはString配列です。

ご教授ありがとうございます。

10個ずつの配列にすることはできたのですが、
ダブルクォーテーションの前に「¥」(半角円マーク)がついています。
これはダブルクォーテーションのエスケープ文字でしょうか。
作成した文字列はエスケープ不要です。
お手数ですが、これを踏まえて再度ご教授いただけませんでしょうか。
(コードの解読ができず…)

上記から少しそれますが、以下のような列を読み込む際、
#N/A」表記のセル以下を読み込まないようにできたりしますか?
読み込んだ後に削除でもよいです。
無題

お願いばかりで申し訳ございません。
よろしくお願いいたします。

こんにちは

こちらどのように確認しましたでしょうか?
ローカルパネルの値でしたら、C#の表現になっているだけですので、
実際の値とは異なると思います。

#N/A」表記のセル以下を読み込まないようにできたりしますか?
読み込んだ後に削除でもよいです。

単純には、読み込んだ直後にデータテーブルをフィルタアクティビティで削除すれば
良いように思えますがいかがでしょうか?(同様の機能を式に組み込むことも可能ですが)

できました!ありがとうございます!

This topic was automatically closed 3 days after the last reply. New replies are no longer allowed.