身為一個數據分析師,每天跟大量的數據打交道是我們的日常生活,在現今資訊時代,數據處理變得越來越重要。在 RPA 模組中有 Excel Processor 處理模組,它能夠輕鬆處理 Excel 表格,將其轉換為CSV 或 EXCEL 檔案。這個模組能夠強大有效地處理數據,大量節省我們的作業時間,接下來幾章我們會深入介紹它的功能和如何熟稔的應用。
回顧前一天文章:Five mins RPA | 8.RPA接收郵件統整
Excel Processor 是一個用於處理EXCEL表格的工具,它的主要功能包括:
將你的 Excel 表格 Pick 到這個處理模組中。可以通過點擊選取檔案,或使用 %FILENAME% 變數來指定要處理的檔案。
在 Excel 中可能有多個工作表(Table)。我們可以指定要處理的工作表名稱,如果留空,模組預設的狀況會使用檔案中的第一個工作表。
我們可以指定表格資料的起點(不包含表頭),我們可以在設定好 Data Cell 後點選 Detect 偵測欄位的 HEADER,系統會自動帶物其中。
表格的表頭是數據的關鍵部分。你可以使用兩種不同的方式來指定表頭欄位:
最後可以指定輸出檔案的格式,支援 CSV 和 XLSX 兩種格式。
關於 Excel 模組系列一共有分成:Excel Processor/ Excel Analyzer/ Excel Writer/ CSV Creator 等模組功能,今天這篇文章主要著重在 Excel Processor 上。我們建立新的訓練並命名技能群組,打開主畫面右邊視窗中的 Excel Processor。
先提前預覽資料表格,查看資料型態,可以看到我們這個表格是鐵人賽科技的10月分銷售明細。
進入模組後填寫基本資料,挑選 (Pick) 我們的檔案位置,選擇我們要執行的工作表 (Table),並且在 Data Cell 中選擇我們需要使用的標頭名稱。舉例來說 A3 就是抓取 A整列的資料,它會自動在 HEADER 中帶入 ["銷售日期","銷售對象","商品名稱","數量","單價","銷售金額","營業稅","銷售金額合計"],最後選擇我們要輸出的資料格式。我們也可以在 Low-Code 寫入程式碼,為了進行下一步 Debug 測試可以先寫入以下程式。
console.log(input)
打開 Debug 視窗,進入到 Console 後點選 Test 就可以進行測試, RPA 機器人自動把表格內資料整理起來,我們能夠從偵錯中找到資料代表執行成功。若不希望第 [0] 筆資料為表頭,可以回到上面的 Data Cell 將 A3 改為 A4,也就是從資料開始,就不會抓到表頭囉。
這次物件 (Object) 是由一群 key-value 的 Array 所組成,我們可以看到我們的標題對應上的資料。
能夠撰寫 Low-Code 代表能夠有非常多種寫法,我們可以選定我們要的表格內容,利用 ForEach 搭配陣列的方式抓取內部的資料,並且將結果打印出來
input.forEach((row, index) => {
console.log(index + '.商品名稱:' + row["商品名稱"] + ',價格:' + row["銷售金額"])
})
我們點開 debug 資料後可以看到在 input 中看見資料細節,這時候我們就能夠搭配 if 判斷式來取用,舉例來說我可以選擇「銷售對象」為「無敵技術有限公司」,可以抓到無敵的資料。
input.forEach(row => {
if(row["銷售對象"] === "無敵技術有限公司") console.log(row)
})
將結果從打印轉成匯出 csv 檔案的方法跟前幾章相同,只需要在 Low-Code 的地方將 console.log(row) 改為 output.push(row) 就可以了,因此修正後的程式碼如下:
// input[{}] represe nts row objects of excel sheet
// output[{}] represents row objects of output sheet
console.log(input)
input.forEach(row => {
if(row["銷售對象"] === "無敵技術有限公司") output.push(row)
})
Excel Processor 是一個強大且靈活的工具,可以幫助你處理EXCEL表格中的數據。它的功能豐富,讓你能夠輕鬆地處理各種不同結構的表格,並獲得高效的處理結果。無論你是處理大型數據集還是簡單的表格,這個模組都能夠滿足你的需求。
黃仁勳的一句話讓這個世界都瘋了,身為與數據打交道多年的我們能做些什麼呢? 很簡單就是跟著一起瘋。「You Learn the more, you Get the more.」。沒想到鐵人賽又一年了呢,這篇是 【Five mins RPA】 系列文章除此之外也歡迎大家走走逛逛關於我過去的文章
一個正在為 300 多萬訂閱的 Youtuber 服務的資料科學家,擅長將商管行銷導入機器學習與人工智慧,並且從大量的數據中找出 Insight,待過 FMCG、Communication、Digital Marketing,最近一直在資訊圈打滾,趕著不被這波人工智慧浪潮給吞噬,寫文章寫了好一段時間了,期待著這個社會每個人能在各個角力間不斷沖突而漸能找到一個平衡點並回歸最初的初心。