いつもお世話になっております。
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.