-
表題の件、PAD内でデータテーブル同士を結合する方法をご存じの方いらっしゃいましたらご教示ください。
■条件■
行方向に結合したい
データテーブルの列(ヘッダー)は全く同じ
元はExcelデータ(ファイル毎)
PADの外(Excel)でまとめてから取込はフローが長くなるので避けたい
■現状■
Excel内でヘッダーを除くテーブルを最初の空行を基準に繰り返し貼付け、終わったらデータの読み込みをしています。ただこれだと時間が掛かるし、Excel処理の挙動が安定しないのでもっと精度を上げていきたいと考えています。可能ならPADで読み込むときに結合を同時に行いそのまま後続処理につなげていきたいです。
リストの結合はネットでよく見ますが、データテーブルの結合については出来るとも出来ないとも書いていない様なので、わかる方がいらっしゃればご教示ください。
-
「PADの外(Excel)でまとめてから取込はフローではなく、PAD内でデータテーブル同士を結合する方法について」
「行をデータテーブルに挿入する」アクションで可能かと存じます。
(例)
①元のExcelデータを「Excelワークシートから読み取る」で、
結合したいテーブル型のExcelData、ExcelData2を生成します。②「新しいデータテーブルを作成する」アクションで、空のデータテーブルを作成します。
※こちらに結合するデータをまとめていく。パラメーター設定で作成する行と列の範囲を決めます。
結合するデータテーブルの列数が同じとのことなので、その数と同じ列数を設定します。
・新しいテーブル:行1、列6 など
・生成された変数:DataTableSum上記で作成した(DataTableSum)に「行をデータテーブルに挿入する」アクションで、結合させたいデータを挿入します。
※「行をデータテーブルに挿入する」は、下記のようなパラメーターが設定できます。
・データテーブル:DataTableSum
・挿入場所:データテーブルの末尾
・新しい値:%CurrentItem%その際、新しい値には、【データテーブル型を挿入することはできません。】
※このパラメーターは、列の数がデータテーブルの列数と一致するリスト、またはデータ行数を受け取ります。参考:変数のデータ型について(データ行について)
https://learn.microsoft.com/ja-jp/power-automate/desktop-flows/variable-data-typesそのため、「For each」を使用し、元のテーブルデータをデータ行数型(%CurrentItem%)として、DataTableAに挿入します。
・反復処理を行う値:ExcelData
・保存先:CurrentItem結合するもう一方のデータテーブルも同じように処理を行います。
結合したいデータの元であるExcelData、ExcelData2に列名が入っている場合は、予め 「データテーブルから行を削除する」などで削除、if文などで回避できるかと思います。
—————————–
なお、ご質問いただきました行方向での結合についてですが、
列(ヘッダー)固定で下にデータが並ぶ形でよろしいでしょうか。ご参考になれば、幸いです。よろしくお願いいたします。
-
ご教示頂きありがとうございます。
まず、最後のご質問の部分についてですが、ご理解の通りです。
ご教示頂いた内容からすると、1行ずつ加えて行くというものかと理解しております。
データテーブル同士を単純に合体という訳には行かなさそうですね。
大きなデータテーブル同士だと時間がかかりそうなイメージです。
一度試してみて挙動を伺いたいと思います。
詳細にご教示頂きありがとうございました。
1 - 3 of 3 回答を表示