UiPath 實作|透過 RPA 實現 Excel 自動化!

閱讀時間約 7 分鐘
Excel 方方正正的表格型態優勢非常適合使用 UiPath,加上工作場合中,Excel 表格也經常被用來儲存顧客資料、管理貨品庫存,甚至先前介紹網路爬蟲的系列文章<RPA 實戰應用|五分鐘帶你看懂電商產業背後的爬蟲機器人>,所抓下來的資料,也可以在經過整理後以 Excel 的方式輸出結果。
由此可見,學習、熟悉 UiPath 中有關 Excel 的相關功能,將能夠幫助員工減輕許多重複性動作、搜尋目標資料、甚至挪動資料等等的任務,提升整體工作效率,進而掌握自己工作節奏。
RPAI 數位優化器這次要以 Udemy 上的〈Complete UiPath RPA Developer Course: Build 7 Robots〉課程中第三個實作為基礎進行實作分享,並且加以延伸概念、過程中比較容易犯錯之處,希望可以幫助大家解決製作 RPA 機器人過程中遇到的 Excel 相關問題。
在開始閱讀正文之前,也別忘了先追蹤我們的 臉書粉絲專頁方格子帳號

專案說明

在這個專案實作中,我們將進入到一個名為 RPA challenge 的網站,並可以看到一個類似報名系統的畫面(如下圖),主要任務是要將十筆 Excel 的資料,按照標題名稱填入,另一個可能會面臨到的任務是,每填入一筆資料格子就會換位置。因此,做完專案之後,你將可以學習到:
  1. 將 Excel 內容資料,轉移或填入到目標網頁中。
  2. Excel 表格資料讀取、變數設定、變數型態的重要性。
  3. Anchor base 的概念和屬性設定。
如何在 UiPath 上實現 Excel 的流程自動化?
〈Complete UiPath RPA Developer Course: Build 7 Robots〉課程中第三個機器人專案練習,會帶你手把手地實現將 Excel 中的人事資料移轉到網頁上的某個系統,牽涉到開啟網頁、選取表格範圍、到最後逐列讀取資料的技巧,還有一個重要且不易理解的概念就是 Anchor(錨定),因此會在本篇文章特別說明,並且補充兩個常混淆的 UiPath Excel 功能。

這樣的練習可以在甚麼工作場景運用到呢?舉例來說,如果身在一個人資部門,要幫公司的同事們報名路跑活動,為了避免手動輸入資料過程發生錯誤,或許這個機器人就可以幫助你完成任務。
文章看到這邊,不妨先想想這樣的 RPA 應用,是否也可以結合自身哪些業務呢?所以建議大家別急著往後看文章,可以先自己嘗試看看,等做完了再回來把文章的下半部看完,相信你將會得到更多不一樣的觀點!
如果還想學習更多 UiPath 功能、實作案例並了解最新自動化趨勢,
歡迎加入「零基礎快速學習 RPA-利用 UiPath 建構自動化機器人」線上課程!課程優惠只到 2024 年 2 月 5 日,快點擊連結立即了解:https://mastertalks.tw/products/rpa-uipath?ref=RPARPA

UiPath Excel 常使用到的功能

如下圖所示,這些是透過 UiPath 實現 Excel Automation 常用的功能,多數的功能使用起來均相對直覺,因此將另外著重所框選起來,較須特別注意的三個功能,來和大家進行分享和介紹:

Anchor _基本介紹

Selector 是 UiPath 中用於辨識 UI 元素(UI element,可以先當作是 UiPath 系統中可以辨識的元件)的方式,藉由設定其屬性可以讓 UiPath 找出唯一指定的元素。
由於它的方式會用到 XML 字串符,除了跟 low code 的本質牴觸之外,也可能會有點複雜以至於寫出來的 Selector 不夠穩定,無法順利地找到唯一的指定元素,所以 UiPath 提供 Anchor base 解決上述的兩個問題,也保留 XML 的方式因應來自不同背景的使用,整體的彈性更高。
Anchor 本來中文的翻譯是船錨,用來固定停泊在岸邊的船隻,避免被浪帶走,
採用「不漂走、固定」的概念,來找到唯一的目標。
Anchor Base Activity:是一個 Container,根據想要搜尋的目標來找尋相對應的 UI element,並且執行指定的動作,也就是說在 Container 中包含兩個活動,一個是 Target,另一個則是 Action。Target 是想要把錨放在哪個位置,方便 UiPath 去找;而 Action 則是找到 Anchor 之後,要採取甚麼動作,比方說填入資料還是按下 click。
Anchor position:屬性設定中,表示 Anchor 要放在 UI element 的上方、下方、左邊、或者右邊。這個例子是會不斷變動位置,所以選擇 Auto。
延伸閱讀:低代碼(low code)平台基本介紹

額外補充:兩個易混淆的 UiPath Excel 功能

Get raw item:從 For Each Raw in Data Table 每一列的資料會暫存成一個空間預設是 CurrentRaw,在屬性中定義行的名稱(column name, header),當把第幾列和第幾行定義完成後,就可以順利從 Excel 擷取出要的資料。
Excel read range 和 workbook read range 的差別:當搜尋 read range 時,會出現兩個不同的下拉選單(下圖),功能和屬性設置大同小異。但在 Excel 底下的 read range 是須在 Excel Application Scope 這個活動下,因此一開始就已設定好目標的 xlsx 檔案路徑,只需選擇分頁即可。另外須特別注意的是 workbook 底下的 read range 必須先將 Excel 關掉後才能正常執行。

專案回顧與總結

跟著影片做仍然會有些細節被忽略,因此 RPAI 數位優化器也分享實作時容易犯的錯誤,讀者自行操作時可以留意,或者遇到問題時可以參考解決!
  1. 變數(Variables)的設定:設定電話的變數時,預設是字串(string),但嘗試過後發現用 Generic value 變數型態才有辦法執行。
  2. 中文版使用者打開Excel的預設活頁簿名稱是工作表 1,如果使用英文版的UiPath,要留意將 Read range 中的位置設定 sheet1 改成工作表 1。
    Generic 通用值變數:
    可以儲存任何類型的數據,適合用在當你不確定數據類型的時候。
讓我們一起由簡單開始,成就不簡單!
如果你/妳喜歡這篇文章,歡迎點點愛心或留言,讓我們相互交流和成長!
這次的分享到此告一段落,想了解更多 RPA + AI 與數位轉型的最新趨勢與觀點、RPA 軟體功能介紹及實務應用案例,也歡迎追蹤 RPAI 數位優化器的社群和我們交流互動,我們下次見!
🚀 Instagram:RPAI 數位優化器
🚀 臉書粉絲專頁:RPAI 數位優化器
🚀 YouTube 頻道:RPAI 數位優化器
為什麼會看到廣告
122會員
107內容數
我們是以「機器人流程自動化(RPA)」結合「人工智慧(AI)」為主題的中文學習社群,旨在分享 RPA + AI 的學習資源、應用實例和最新發展趨勢,讓工作者透過自動化工具的有效應用,創造數位優化與轉型契機,讓我們一起由簡單開始,成就不簡單!
留言0
查看全部
發表第一個留言支持創作者!
你可能也想看
Google News 追蹤
Thumbnail
這個秋,Chill 嗨嗨!穿搭美美去賞楓,裝備款款去露營⋯⋯你的秋天怎麼過?秋日 To Do List 等你分享! 秋季全站徵文,我們準備了五個創作主題,參賽還有機會獲得「火烤兩用鍋」,一起來看看如何參加吧~
Thumbnail
11/20日NVDA即將公布最新一期的財報, 今天Sell Side的分析師, 開始調高目標價, 市場的股價也開始反應, 未來一週NVDA將重新回到美股市場的焦點, 今天我們要分析NVDA Sell Side怎麼看待這次NVDA的財報預測, 以及實際上Buy Side的倉位及操作, 從
Thumbnail
Hi 大家好,我是Ethan😊 相近大家都知道保濕是皮膚保養中最基本,也是最重要的一步。無論是在畫室裡長時間對著畫布,還是在旅途中面對各種氣候變化,保持皮膚的水分平衡對我來說至關重要。保濕化妝水不僅能迅速為皮膚補水,還能提升後續保養品的吸收效率。 曾經,我的保養程序簡單到只包括清潔和隨意上乳液
Thumbnail
在 IG 上看到一位前端大大用 Google Apps Script + Line bot 替自己的球隊安排了球經,覺得很有趣,想來玩看看
Thumbnail
本篇文章將教你如何在Kubernetes cluster內部署一個MongoDB,包括取得Manifests、建立Volume、部署實務、基本操作和結論。透過操作演示,讓你瞭解在實務上如何成功建立MongoDB,並進行基本操作。
Thumbnail
題目會定義一組類別和介面,要求我們實做餐廳訂位報號系統。 SeatManager(int n) : 初始化餐廳最多有n個座位,n 最少是1 int reserve() : 要求返回最小的可讓客人入座的空座位編號。 void unreserve(int seatNumber) : 取消訂位,這個座位歸
Thumbnail
最近剛好分配一個需求,要批次更新一些基礎設定資料,而新系統基礎設定資料都統一由別的團隊維護在Google Sheet 上,一開始是要我寫 Laravel Seeder 塞資料表,後來發現也太多數據要批次更新了,數據要對到何時何年,乾脆來研究串 Google Sheet API 整批塞入在對總行數就好
Thumbnail
在撰寫專案時,有時候可能需要做一些特定Exceptions 來拋出error message的情況,而在不同公司任職,大家配置的流程可能就有些不同,這邊將簡單練習如何配置自定義的Exception。
Thumbnail
我們也推出了一項專案活動<RPA數位傳情|在聖誕節寄出一封時空信​>,希望透過 RPA來做一個類時空信的活動,因此本篇文,也希望和大家聊聊: 1. 為何要做這樣的專案活動 2. 為何學習 RPA很重要 3. 如何設計自己的 RPA機器人
Thumbnail
RPA 全名為 Robotic Process Automation,意即「機器人流程自動化」,是一種軟體服務, 可以將其想像成有位數位助手,在一旁紀錄我們如何進行電腦操作,並且加以模仿、學習,在建立其流程後,便可讓這個軟體執行我們剛剛示範的流程任務,進而有效節省我們人為處理的時間和心力。
在這段故事裡,為了保護主角,所有的人物都是化名,故事會做一定程度的改寫。當談到主角真實的故事的時候,請了解我無法將故事鉅細靡遺的描述。這是他人的故事,我講我的感受,我也只能講我的感受。 最近一年,我開始跟親友聯絡。已經二十年沒跟親友有Quality time,一開始的我,其實蠻不習慣的。我很懷念年
Thumbnail
這個秋,Chill 嗨嗨!穿搭美美去賞楓,裝備款款去露營⋯⋯你的秋天怎麼過?秋日 To Do List 等你分享! 秋季全站徵文,我們準備了五個創作主題,參賽還有機會獲得「火烤兩用鍋」,一起來看看如何參加吧~
Thumbnail
11/20日NVDA即將公布最新一期的財報, 今天Sell Side的分析師, 開始調高目標價, 市場的股價也開始反應, 未來一週NVDA將重新回到美股市場的焦點, 今天我們要分析NVDA Sell Side怎麼看待這次NVDA的財報預測, 以及實際上Buy Side的倉位及操作, 從
Thumbnail
Hi 大家好,我是Ethan😊 相近大家都知道保濕是皮膚保養中最基本,也是最重要的一步。無論是在畫室裡長時間對著畫布,還是在旅途中面對各種氣候變化,保持皮膚的水分平衡對我來說至關重要。保濕化妝水不僅能迅速為皮膚補水,還能提升後續保養品的吸收效率。 曾經,我的保養程序簡單到只包括清潔和隨意上乳液
Thumbnail
在 IG 上看到一位前端大大用 Google Apps Script + Line bot 替自己的球隊安排了球經,覺得很有趣,想來玩看看
Thumbnail
本篇文章將教你如何在Kubernetes cluster內部署一個MongoDB,包括取得Manifests、建立Volume、部署實務、基本操作和結論。透過操作演示,讓你瞭解在實務上如何成功建立MongoDB,並進行基本操作。
Thumbnail
題目會定義一組類別和介面,要求我們實做餐廳訂位報號系統。 SeatManager(int n) : 初始化餐廳最多有n個座位,n 最少是1 int reserve() : 要求返回最小的可讓客人入座的空座位編號。 void unreserve(int seatNumber) : 取消訂位,這個座位歸
Thumbnail
最近剛好分配一個需求,要批次更新一些基礎設定資料,而新系統基礎設定資料都統一由別的團隊維護在Google Sheet 上,一開始是要我寫 Laravel Seeder 塞資料表,後來發現也太多數據要批次更新了,數據要對到何時何年,乾脆來研究串 Google Sheet API 整批塞入在對總行數就好
Thumbnail
在撰寫專案時,有時候可能需要做一些特定Exceptions 來拋出error message的情況,而在不同公司任職,大家配置的流程可能就有些不同,這邊將簡單練習如何配置自定義的Exception。
Thumbnail
我們也推出了一項專案活動<RPA數位傳情|在聖誕節寄出一封時空信​>,希望透過 RPA來做一個類時空信的活動,因此本篇文,也希望和大家聊聊: 1. 為何要做這樣的專案活動 2. 為何學習 RPA很重要 3. 如何設計自己的 RPA機器人
Thumbnail
RPA 全名為 Robotic Process Automation,意即「機器人流程自動化」,是一種軟體服務, 可以將其想像成有位數位助手,在一旁紀錄我們如何進行電腦操作,並且加以模仿、學習,在建立其流程後,便可讓這個軟體執行我們剛剛示範的流程任務,進而有效節省我們人為處理的時間和心力。
在這段故事裡,為了保護主角,所有的人物都是化名,故事會做一定程度的改寫。當談到主角真實的故事的時候,請了解我無法將故事鉅細靡遺的描述。這是他人的故事,我講我的感受,我也只能講我的感受。 最近一年,我開始跟親友聯絡。已經二十年沒跟親友有Quality time,一開始的我,其實蠻不習慣的。我很懷念年