UiPathでデータテーブルに他のデータテーブルの列を追加する

ツール・アプリ活用

UiPath Studioで「データテーブルに他のデータテーブルの列を追加する方法」を解説します。
2つのExcelファイルを横方向につなげて1つの表にしたい場合などにおすすめの方法です。

シナリオ:データテーブルの列追加が必要な場面とは?

日々の業務では、Excelやデータベースから取得した異なるデータセットを統合する必要が頻繁に発生します。例えば次のような場面です。

  • 顧客情報を結合:顧客リストに購入履歴を追加して分析する
  • 異なるシステムのデータ統合:ERPとCRMから出力されたデータを1つのテーブルにまとめる
  • データ検証:2つのデータセットを比較し、特定の列を追加して結果を記録する

UiPathを使えば、こうした作業を手動で行う時間を大幅に短縮できます。

UiPathでの列追加の基本的な流れ

列追加の方法はデータテーブルの内容によって2通りの方法があります。
以下は、他のデータテーブルから列を追加する際の一般的なプロセスです。

  1. 「データテーブルを結合」アクティビティを使う
  2. 「繰り返し(データテーブルの各行)」アクティビティを使う

サンプルシナリオ

  • データテーブルA:顧客ID、名前、メールアドレス
  • データテーブルB:顧客ID、購入金額
  • 目標:購入金額をデータテーブルAに追加する。

方法1:顧客IDをキーにしてデータテーブルを結合する

ステップ1:データの読み込み
  1. Excelファイルを用意
    Excelファイルに以下のようなデータを保存します。

データテーブルA

顧客ID名前メールアドレス
1田中一郎tanaka@example.com
2鈴木次郎suzuki@example.com

データテーブルB

顧客ID購入金額
15000
23000
  1. 範囲を読み込みアクティビティを使用
    「範囲を読み込み」アクティビティで、データテーブルAとデータテーブルBをそれぞれ読み込み、変数名をそれぞれ dt1、dt2 とします。
ステップ2:データの結合

方法1:「データテーブルを結合」アクティビティを使う

  1. 「データテーブルを結合」アクティビティを配置
     アクティビティパネルから「データテーブルを結合」をドラッグ&ドロップします。
  2. プロパティを設定
     - 入力データテーブル1dt1
     - 入力データテーブル2dt2
     - 結合型:Inner(共通の顧客IDのみを結合)
     - 出力データテーブル:結合後のデータテーブル(例:dtResult
  3. 結合条件を設定
     プロパティに以下を設定:
     - 列の表1:顧客ID(dt1の列名)
     - 列の表2:顧客ID(dt2の列名)

出力結果(dtResult)

この方法では「顧客ID_1」という列が残ってしまいますが、連結することができました。

顧客ID名前メールアドレス顧客ID_1購入金額
1田中一郎tanaka@example.com15000
2鈴木次郎suzuki@example.com23000

方法2:データテーブルに列を追加して「繰り返し(データテーブルの各行)」アクティビティでデータを追加する

ステップ1:データの読み込み

方法1と同じなので説明は省略します。

ステップ2:データ列の追加
  1. 「データ列の追加」アクティビティを使用
     データテーブルAに「購入金額」列を追加します。
     - データテーブルdt1
     - 列名:購入金額

ステップ3:データの追加

  1. 「繰り返し(データテーブルの各行)」アクティビティを使用
     データテーブルBの購入金額を、データテーブルAの対応する行に追加します。

代入アクティビティには以下を入力しています。(現在のインデックスに変数を設定してください)

CurrentRow(“購入金額”) = dt2.Rows(CurrentIndex)(“購入金額”)

出力結果(dt1)

この方法では以下のように正しく連結することができましたが、列数が多くなると工夫が必要になりそうです。

顧客ID名前メールアドレス購入金額
1田中一郎tanaka@example.com5000
2鈴木次郎suzuki@example.com3000

おわりに

データテーブルに他のデータテーブルから列を追加する方法を2通り説明しました。
意外とつまづきそうなところだったので参考になれば幸いです。

コメント

タイトルとURLをコピーしました