UiPath Studioで「データテーブルに他のデータテーブルの列を追加する方法」を解説します。
2つのExcelファイルを横方向につなげて1つの表にしたい場合などにおすすめの方法です。
シナリオ:データテーブルの列追加が必要な場面とは?
日々の業務では、Excelやデータベースから取得した異なるデータセットを統合する必要が頻繁に発生します。例えば次のような場面です。
- 顧客情報を結合:顧客リストに購入履歴を追加して分析する
- 異なるシステムのデータ統合:ERPとCRMから出力されたデータを1つのテーブルにまとめる
- データ検証:2つのデータセットを比較し、特定の列を追加して結果を記録する
UiPathを使えば、こうした作業を手動で行う時間を大幅に短縮できます。
UiPathでの列追加の基本的な流れ
列追加の方法はデータテーブルの内容によって2通りの方法があります。
以下は、他のデータテーブルから列を追加する際の一般的なプロセスです。
- 「データテーブルを結合」アクティビティを使う
- 「繰り返し(データテーブルの各行)」アクティビティを使う
サンプルシナリオ
- データテーブルA:顧客ID、名前、メールアドレス
- データテーブルB:顧客ID、購入金額
- 目標:購入金額をデータテーブルAに追加する。
方法1:顧客IDをキーにしてデータテーブルを結合する
ステップ1:データの読み込み
- Excelファイルを用意
Excelファイルに以下のようなデータを保存します。
データテーブルA
| 顧客ID | 名前 | メールアドレス |
|---|---|---|
| 1 | 田中一郎 | tanaka@example.com |
| 2 | 鈴木次郎 | suzuki@example.com |
データテーブルB
| 顧客ID | 購入金額 |
|---|---|
| 1 | 5000 |
| 2 | 3000 |
- 範囲を読み込みアクティビティを使用
「範囲を読み込み」アクティビティで、データテーブルAとデータテーブルBをそれぞれ読み込み、変数名をそれぞれdt1、dt2とします。

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

出力結果(dtResult)
この方法では「顧客ID_1」という列が残ってしまいますが、連結することができました。
| 顧客ID | 名前 | メールアドレス | 顧客ID_1 | 購入金額 |
|---|---|---|---|---|
| 1 | 田中一郎 | tanaka@example.com | 1 | 5000 |
| 2 | 鈴木次郎 | suzuki@example.com | 2 | 3000 |
方法2:データテーブルに列を追加して「繰り返し(データテーブルの各行)」アクティビティでデータを追加する
ステップ1:データの読み込み
方法1と同じなので説明は省略します。
ステップ2:データ列の追加
- 「データ列の追加」アクティビティを使用
データテーブルAに「購入金額」列を追加します。
-データテーブル:dt1
-列名:購入金額

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

代入アクティビティには以下を入力しています。(現在のインデックスに変数を設定してください)
CurrentRow(“購入金額”) = dt2.Rows(CurrentIndex)(“購入金額”)
出力結果(dt1)
この方法では以下のように正しく連結することができましたが、列数が多くなると工夫が必要になりそうです。
| 顧客ID | 名前 | メールアドレス | 購入金額 |
|---|---|---|---|
| 1 | 田中一郎 | tanaka@example.com | 5000 |
| 2 | 鈴木次郎 | suzuki@example.com | 3000 |
おわりに
データテーブルに他のデータテーブルから列を追加する方法を2通り説明しました。
意外とつまづきそうなところだったので参考になれば幸いです。



コメント