這次我幫一個業務團隊做自動化,他們需要把跟客戶預約的行事曆透過「自動化」的處理,整理到 excel 中,達到「資料自動化」的目標,後續再去做深度的銷售資料分析
- 他們的問題是:業務團隊都是業務菁英,沒有助理職位,團隊沒有時間一筆一筆去更新客戶的預約、資料或是預約的詳細狀況。但沒有資料,後續主管也無法去分析客戶的資料
- 需要解決的問題:團隊內部使用 Google Workspace,所以希望用 Google 的服務去達到自動化效果
資料自動化是什麼?
在現代商業環境中,資料自動化是一個關鍵的概念,尤其對於小團隊而言。資料自動化是指將手動資料處理 + 管理流程,轉換成「自動化流程」,提高效率及減少錯誤。
這樣的自動化可以應用於多種業務場景,例如客戶預約管理、或是銷售數據分析等等。
資料自動化是什麼?
- 資料自動化是指利用軟體工具和技術,將資料收集、處理、存儲和分析的過程自動化。這樣可以減少手動操作,提高資料處理的準確性和效率。
- 資料自動化涵蓋從數據輸入到報告生成的整個過程。
資料工程是什麼?
- 資料工程則是處理和管理大量數據的技術和方法。資料工程師設計和構建數據處理系統,確保數據的高質量和可用性。他們處理數據的收集、清理、轉換和存儲,為資料分析和數據科學提供基礎設施。
兩者之間的差異是什麼?
- 資料自動化主要關注於通過自動化工具和腳本來簡化和加速現有的數據處理流程
- 而資料工程則涉及更深層次的數據基礎設施建設,確保數據處理系統的穩定性和可擴展性
- 簡而言之,資料自動化是資料工程的一部分,兩者相輔相成,共同提升數據處理的效率!
- 在團隊還沒有大到需要考慮做資料工程之前,可以先以資料自動化的角度來了解他的便利 XDD
- 一般的內勤工作者也可以透過這個方式減少自己的工作時間,並且當作切入資料領域的契機!!!
→ 資料工程師必接觸這個專案!還有要提前知道的 5 件事 !
小團隊非常需要資料自動化的原因?
小團隊通常面臨資源有限和人力短缺的挑戰,因此資料自動化對他們來說尤為重要。以下是幾個原因:
1. 人力短缺:需要專注在分析跟行動
小團隊的成員往往需要多工處理各種任務。如果能通過資料自動化減少數據處理的時間,他們就能將更多精力投入到更具價值的商務開發上,從而提高整體效率。
2. 瑣碎的行政工作很浪費時間
手動管理行事曆和數據輸入等行政工作既繁瑣又容易出錯。自動化這些任務不僅能節省時間,還能減少錯誤,提高數據的準確性和一致性。
實作舉例:如何用 GAS 把行事曆的資料自動化到試算表
這次為了幫助這個小團隊實現資料自動化,我利用 Google Apps Script (GAS) 將 Google Calendar 的預約資料自動同步到 Google Sheet 中!讓他們可以做後續的銷售資料管理跟分析~
什麼是 GAS?
- Google Apps Script (GAS) 是一種基於 JavaScript 的腳本語言,專門用來自動化和擴展 Google Workspace 的所有應用程序
- GAS 可以幫助用戶創建自定義函數、自動化重複性任務,並與其他Google 的服務結合!!
→ 收據訂貨單範本下載:Apps Script + Google Sheet + Google Doc + 生成 PDF:流程自動化
為什麼他可以做自動化?
- GAS 擁有強大的 API 接口,能夠與 Google Calendar、Google Sheet 等多個 Google 服務無縫接軌
- 如果小公司也是用 Gmail 系統體系,GAS 就是自動化任務的理想工具~能夠自動執行多種操作,減少一些人工手動作業
3 步驟達到資料自動化
1. 串接行事曆
- 首先,我們需要獲取 Google Calendar 的訪問權限,所以中間程式碼運行的時候,會需要「許可」
2. GAS 自動化串接:Google Calendar → Google Sheet:達到全自動匯資料
這一步的重點在於,把 Google Calendar 客戶的「所有預約資料」都直接「自動」匯進 Google Sheet 中,方便業務團隊跟主管可以跟進「全團隊的客戶名單 & 資料」
function syncAllCalendarsToSheet() {
var sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('Sheet1');
sheet.clear();
sheet.appendRow(['Calendar Name', 'Event Title', 'Start Time', 'End Time', 'Description']);
var calendars = CalendarApp.getAllCalendars();
var startDate = new Date('2024-01-01'); // 設定开始日期
var endDate = new Date('2024-12-31'); // 設定结束日期
calendars.forEach(function(calendar) {
var events = calendar.getEvents(startDate, endDate);
events.forEach(function(event) {
sheet.appendRow([calendar.getName(), event.getTitle(), event.getStartTime(), event.getEndTime(), event.getDescription()]);
});
});
}
3. 設定排程,解放雙手!!達到每天全自動更新
- 最後,我們需要設置一個定時觸發器,使腳本能夠每天自動運行,畢竟預約是每天都會有的,所以每天都要自動更新,才算是「真正的自動化」
- 執行
createDailyTrigger
函數,將自動設置一個每天午夜 12:00 運行的觸發器,確保當天的日曆數據每天自動更新到 Google Sheet 中
function createDailyTrigger() {
ScriptApp.newTrigger('syncFilteredCalendarsToSheet')
.timeBased()
.atHour(0) // 設置在午夜12:00 AM觸發
.everyDays(1)
.create();
}
function deleteTriggers() {
var allTriggers = ScriptApp.getProjectTriggers();
for (var i = 0; i < allTriggers.length; i++) {
ScriptApp.deleteTrigger(allTriggers[i]);
}
}
結論:資料自動化是數據分析師基本能力,但其實每個人都需要!
其實我個人非常喜歡資料自動化,因為這不僅是數據分析師的基本技能,也是現代商業環境中每個人都「可以掌握」的能力~通過資料自動化,尤其對於小團隊,可以節省出更多時間,專注在分析數據上,專注於更有價值的工作!
那對於想要轉職數據分析師的人來說,資料自動化更是必學的 mindset,除了這跟資料工程有關係外,小小的自動化也可以幫助我們幫自己或是客戶或是團隊節省很多時間~