UiPathデータテーブルを配列でコピーする方法を徹底解説!

皆さんこんにちは。
今回は、前回から行っている他のデータテーブルにコピーの第二弾です。

前回はDataRow型を使ってコピーしていました。
今回は配列を使って行います。

基本的なフローは前回とほぼ同じです。

ポイントは「配列の宣言方法」「DataRowの配列への代入方法」です。

あとはほとんど同じです。「データ行を追加」アクティビティの設定箇所が「データ行」→「配列行」なるだけです。

それでは実際にやってみましょう

目次

UiPathデータテーブルのデータのコピー内容

前回と同じく以下のようにデータテーブル「dt野菜」の内容をデータテーブル「dt果物」に貼り付けます

UiPathデータテーブル変数宣言

先ほども申しましたが、今回のポイントの1つは変数の宣言です。

変数の型の選択をArray of[T]を選択し配列にして、そのタイプにObject型を選択します


これでObject型の配列が完成です

UiPathデータテーブル変数への代入

コピー元のデータテーブル分繰り返す等の手法は前回と同じですので割愛します。

「代入」アクティビティでobject型の配列に代入していきます。

配列への代入は「{}」を使って囲み、「,」で区切りながらセットしていきます。

UiPathデータテーブルデータ行を追加

「データ行を追加」アクティビティを使ってdt果物に追加していきます。

基本的に前回と同じです。違いはobject型の変数の場合はセットする箇所が「配列行」というところだけです。

UiPathデータテーブルの確認

確認をします。

コピーされたdt果物を「繰り返し(データテーブルの各行)」アクティビティを使いログに表示します

無事にコピーされています。

ほとんど同じ内容ですが、代入の所が少しすっきりしている感じがします
(もしかしたらDataRowへの代入方法ももっときれいな方法があるかもしれませんが。。。)

UiPathデータテーブルのテスト

ここで前回行ったDataRow型とObject型配列ではどちらが処理が早いのかテストしてみようと思います。

dt野菜に5000行のデータを入れて、dt果物にコピーする時間を測定します。
5000件のデータを入れるのは大変なので品目は適当なアルファベット5桁にします
さて結果は。。。

Object型配列の勝利!!約1分以上も早く終わりました!!

あくまで私の実行環境ですので、時間は目安ですが、

大量のデータを扱うときはObject型でやった方が良いのかもしれません。

もしかしたらDataRowへの代入方法がもっとスマートに書けるのであれば早いのかも!
(知っている方がいましたら、こっそり教えてください。。。)

UiPathデータテーブル配列処理のまとめ

次回はInvokeMethodでのデータテーブルのコピーをお伝えしようと思います。
本日もお読みいただき誠にありがとうございました。

関連記事

UiPath Community Edition セットアップ方法を徹底解説!

UiPathデータテーブルでEXCELファイルの操作方法や連携方法を徹底解説!

UiPathデータテーブルの行追加とコピーの方法を徹底解説!

  • URLをコピーしました!
  • URLをコピーしました!
目次