DataRow型の変数内に¥n で改行された値がある時のSplitの仕方

いつもお世話になっております。
以前、同じような質問をさせて頂いたのですが、再度知恵をお貸し頂きたく投稿させて頂いております。
Excel内の値を1つずつ For each Row で確認し、セル内の値が特定のものであれば変数に格納する といったロボを作成しております。
詰まっておりますのは、読取対象のExcel内の1セル内に 値¥n値 という形(メモ帳に出力し確認)で複数値があるセルがあり、そのセルを読みに行くと 値¥値 と読み取ってしまい正確な取りたい値が取れない状況です。
DataRow型の変数の1セル内に格納された値を上手く分割出来ないでしょうか。

以上、宜しくお願い致します。

こんにちは

最終的にどういった形で処理したいかによりますが、

\nを削除したり他の文字にする場合は row("xx").ToString.Replace(vbLF,"")

複数の文字列に分割する場合は row("xx").ToString.Split(chr(10)) (この場合戻り値はString配列)

といったあたりが候補になるかと思います。

ご回答頂き有難う御座います。
値が1セル内に複数ある場合もあるので、最終的には各値を分割し、For each Row で読み込みたいと考えております。
ご提案頂いた文字列を分割する方法で出る値は For each Row で読み取ることは可能でしょうか。

以上、宜しくお願い致します。

こんにちは

For Each RowとFor Eachの2重ループにすれば可能ではないかと思います。

ざっくりですが以下のような感じになると思います。

For Each RowでデータテーブルのRowをループ
arrString = row("xx").ToString.Split(chr(10)) といった感じで、当該セルの値をString配列に格納。
For EachでarrStringをループ
ループ内で適当な処理

という感じではないでしょうか?

ご教授頂き有難う御座います。
確認させて頂きたいのですが、提示頂いた式内の(“xx”)はrowが特定の1行ではない場合は、(“”)で宜しいでしょうか。

以上、宜しくお願い致します。

こんにちは

row(“xx”)は特定の列を意図しています。
複数の列でこのような複数のデータをもつセルがある場合は、もう少し工夫が必要です。
またこのような場合、各列の複数データの扱い(紐づけ?)がどのような要件なのかを整理する必要もあるかと思います。
もし可能でしたらダミーでも結構ですので、具体的なデータ例を示してもらうと良いかもしれません。

ご回答頂き有難う御座います。
情報の持ち出しが難しいのでべた書きですが、下記のような値内容でDataRow型に格納されております。
“1234”,
“東京”,
“4567¥n8910”,
“千葉¥n神奈川”,

このような値がランダムに格納されておりまして、記載した内容でですと"4567"で値一致をかけたいのですが、表示には千葉¥n神奈川"と出てしまう次第です。
ご教授頂いた式で置換は可能でしたが、番号て紐付けも行いたく存じます。

以上、宜しくお願い致します。

こんにちは

複数データが格納された列が少なければこんな感じでしょうか?
sample20191121.zip (14.6 KB)

多ければすべてのColumnに対してSplitを行うループを組んだほうが良いかもしれません。

xamlを共有頂き有難う御座いました。
説明が不足しており申し訳御座いません。
先ほど頂いたExcel説明しますと、"4567"という値で検索すると"千葉"と最終的に値を出力させたいと考えております。
Excelのセル内には

Column0 Column1
“4567” “千葉”
“5678” ”神奈川"

というように記載されております。
見た目では数字と県が横で紐付いております。

わかりにくく大変申し訳ございませんが、お力を貸していただけますと幸いです。
宜しくお願い致します。

こんにちは

要件がいまいち理解できていないかもしれませんが以下のような感じでしょうか?

sample20191121-2.zip (14.9 KB)

xamlを提供頂き有難う御座います。
提供頂いたxamlで表示される内容が理想となります。
item をdictionary型に格納しようとするとエラーが起きてしまうのですが、要因等思い当たりますでしょうか。
以上、宜しくお願い致します。

こんにちは

item をdictionary型に格納しようとするとエラーが起きてしまう

どのようなエラーでしょうか?
ありがちなのは、

    1. Dictionaryを初期化していない
    1. 代入しようとしている値の「型」がDictionaryで定義したものと違う

等がまずは考えられますが..