我在進行多個資料表彙整合併時,常常會需要知道A資料表的某個值在B資料表中對應到某一行的資料為何,Uipath提供了一個類似Excel Vlookup功能的函數讓我們可以達到此目的。以下我們用一個簡單例子說明:
我們先建立一個Data Table 如下,並存在ExampleDT變數中:
我在Data Table中設計了兩個欄位,第一個欄位是Name,第二個欄位是Grade,在Grade的部分我們故意設計了幾個異常值,例如NA,空值等,待會我們會用Lookup Data Table的功能進行Grade的查找,並判斷Grade是否為數值,是的話顯示Grade,不是的話顯示異常訊息。我們利用Input Dialog的輸入視窗來讓我們輸入我們要查找的人名而輸入結果會被儲存在Name變數中。
Lookup Data Table的使用細節要注意一下,請看右方屬性區域,分別有四大區塊,Input、Lookup Column、Output、Target Column,以下針對這四個區塊進行說明:
(1) Input
Input區塊有兩個參數,DataTable與LookupValue,DataTable是放我們想要查找的資料所在的DataTable,即上述的ExampleDT。LookupValue則是放我們要查找的值,即上述的Name。
(2) Lookup Column
Lookup Column則代表我們要查找的Column,當我們的Data Table有表頭時,可以直接在ColumnName填入表頭名稱,如果沒有表頭,則可以在ColumnIndex填入第幾行。
(3) Ouput
Ouput有兩個參數,CellValue與RowIndex,CellValue是回傳結果,RowIndex是回傳結果所在的列數,如果你今天想要知道查找結果,我們建立一個變數Result,將其放入CellValue,結果就會被指定到Result中。這邊我們特別將Result變數設定成Object型態以可以處理各種資料型態的資料。
(4) Target Column
Target Column即你想要查找的資料所在的Column,以上述為例,我們想要輸入名字,回傳Grade,所以我們想查找的結果就是Grade欄位,所以我們在ColumnName填入Grade,表示我們想要查找我們輸入的名字他的Grade是多少。
(1) 查找名字Shawn的Grade
留言
張貼留言