既存のデータテーブル1行目をタイトル行にする方法

UiPath初心者です。
社内ネットよりcsvダウンロードしたデータを加工しようとしています。
ダウンロードデータの列名が重複していた為、
「csvを読み込み」 で、「先頭列をヘッダーとする」のチェックボックスをオフにし、
読み込みをしました。
元のタイトル行を本当のタイトル行としたく、方法を教えて頂きたいです。
(添付1行目を削除し、2行目をタイトル行としたい。)
列数が多いので、1列ずつ名前を変更ではなく、一度に変更できると有難いです。
どうぞよろしくお願いいたします。
image

こんにちは

以下ご確認ください

1 Like

ありがとうございます。
サンプルを参考にさせて頂き作ったのですが、エラーが出ました。
text と言うのは、変数のことだと思ったのですが、間違えてましたでしょうか。

こんにちは

Systemの後ろのTextは変数ではないので、以下のようにTextのまま残してください

System.Text.RegularExpressions.Regex.Replace
2 Likes

ありがとうございます。
今度はエラーが変わりました。

こんにちは

最初にRead Text File(テキストファイルから読み込み)を用いてください。(Read CSVではなく)
その出力をこの式に与えてください。
使用する変数はString型になります。

1 Like

ありがとうございます。
テキストから読み込みに変更をしました。

csvデータをテーブルをマージで合体させて、その後、このタイトル行を、、と作っていたのですが、マージが出来なくなりました。。
モグラたたきの様にエラーを出してしまい、申し訳ございません。

こんにちは

上記だけですと、やりたいことが何で、どこで問題になっているかわかりにくいですので、
もう少し詳細情報共有いただけますか?

説明不足で申し訳ございません。
行いたい処理は以下の通りとなります。

社内専用アプリより
csvデータ①
csvデータ②
csvデータ③ をダウンロード
(検索対象違いの為、全て列名などフォーマットは同じ。

csvデータ①
csvデータ②
csvデータ③ を読み込み
重複データがあるため、「先頭列をヘッダーとする」のチェックボックスはオフ

データテーブルをマージ で、 ①②③を1つにまとめる


データテーブルの1行目をタイトル行にする (今回の質問です)


データテーブルを加工していく。。。

こんにちは

ありがとうございます。やりたいことは概ね把握できました。
一点質問ですが

を行うことによりCSV2やCSV3の本来ヘッダーとなるデータが
データ部分に入ってしまうように思えますが、これはそうならないので
しょうか?

1 Like

方法を知らず、お恥ずかしいですが、データ行を削除で
マージする前に0行目を削除させようと思っていました。
①のデータへ②と③を入れるので
(②と③の0行目を削除)

こんにちは

了解しました。

方法はいろいろあると思いますが、以下はいかがでしょうか?

(1) Read Text FileアクティビティでCSV1, CSV2, CSV3をそれぞれ読み込む。
変数を仮に、text1, text2, text3とする。

(2) text1の1行目、text2およびtext3の1-2行目を削除する。

text1 = System.Text.RegularExpressions.Regex.Replace(text1,"^.*\n","")
text2 = System.Text.RegularExpressions.Regex.Replace(text2,"^.*\n.*\n","")
text3 = System.Text.RegularExpressions.Regex.Replace(text2,"^.*\n.*\n","")

(3) これらをtextベースでマージする。

text = text1.Trim + vbcrlf + text2.Trim +vbCrLf + text3.Trim

(4) Generate DataTableアクティビティでDataTable化する。

1 Like

ありがとうございます!
さすがです!!!ものすごく鮮やかなキレイな動かせ方です。
さっそく、今から配置させて頂きます!
本当にありがとうございます!!

ありがとうございます!!
エラーが全て消えました!

何度もすみません、、
最後の Generate DataTable の所で以下のエラーになってしまいました。

こんにちは

上記手順(3)のtextの内容が想定通りになっているかの確認する必要があるかと思います。
(Write Text Fileで一旦ファイルに書き出すのが確実かもしれません。)

ちなみにtext1は1行目のみを削除になっていますでしょうか?

ありがとうございます。

ちなみにtext1は1行目のみを削除になっていますでしょうか?

以下のようになっていることが確認できました。
また、全て最初に@がついています。

image
text1 1行目~2行目削除
text2 1行目~3行目削除
text3 1行目~3行目削除

こんにちは

text3については式にあやまりがありました。text2ではなくtext3でした。

text3 = System.Text.RegularExpressions.Regex.Replace(text3,"^.*\n.*\n","")

テキストファイルで読み込み直後のテキストデータはどのようになっているか
共有いただくことは可能でしょうか?
正規表現置換をする前にWrite Text Fileで書きだしていただければと思います。

ちなみに@マークは気にしなくても大丈夫です。

ありがとうございます

最初の投稿の構成と異なりますね。
TEXT1は削除の必要なし
TEXT2,3は1行目のみ削除でOKではないでしょうか?

あと投稿は削除いただければと思います。

ありがとうございます。
csvで取り込んだデータには、自動で列名が降られていたのですが、
違うのですね!
勉強になります!
ありがとうございます!!