理解の一助:UiPath開発のコツ

UiPath(VB .NET Framework)開発で詰まった際に使える、ちょっとしたコツをまとめています。

理解の一助|【DataTable】Selectメソッドで任意のデータを抽出する

<基本フォーマット>

 dt_2 = dt_1.Select(" [●●●] = '▲▲▲' ").CopyToDataTable

 ※Assign(代入)アクティビティで実施 

 

◆変数

変数名 備考
dt_1 DataTable 全データを格納しているDataTable
dt_2 DataTable 抽出結果を格納するDataTable

 

◆記号

記号 役割 説明
●●● カラム名 DataTableの抽出対象のカラム名
▲▲▲ 抽出対象 抽出対象のデータ

 

◆説明 & コツ

 ・『DataTable.Select(条件)』で条件に合致するデータのみ抽出可能です。

  ※『DataTable.Select(条件)』の抽出結果は、DataRow[ ]型となるので、

             上記基本フォーマットでは、「CopyToDataTable」を使用し、DataTable型

             として抽出結果を返しています。

 

 ・条件には、変数を使用することも可能です。

  例) dt_2 = dt_1.Select(" [単価] = '" + int_単価.ToString + "'").CopyToDataTable

 

 ・抽出対象は、『'  '』(シングルクォーテーション)で囲む必要があります。

 

 ・カラム名を囲んでいる『[  ]』は、付けることをお勧めします。

  ※カラム名が数字の場合、『[  ]』を付けないと動作しない可能性があります。

 

 抽出結果が1件もない場合は、エラーとなるのでご注意下さい。

rikaix.hatenablog.com

 

<サンプル>

    dt_2 = dt_1.Select(" [単価] >= '300' ").CopyToDataTable

  ※Assign(代入)アクティビティで実施

 

◆全データ(dt_1の中身)

商品コード 商品名 単価
10 りんご(大) 400
20 りんご(中) 300
30 みかん(大) 300
40 みかん(中) 200

 

◆抽出結果(dt_2の中身)

商品コード 商品名 単価
10 りんご(大) 400
20 りんご(中) 300
30 みかん(大) 300

 

<参考>

下記参考はC#の例しかありませんが、VB .NETでも通用します。

docs.microsoft.com