- 一眼看到
- 自動通知
製造業 10 多個部門:專案進度集中到一張主管看的總表
各部門自己維護專案表,自動彙整到主管看的唯讀總表(主控台);逾期與到期用顏色標出,並寄信提醒。
背景與使用技術(2 項)
中型製造業 10 多個部門各用各的工具記專案進度,主管得逐一詢問才看得到全貌。改用 Google 試算表做三層架構:各部門編輯自己的專案表,自動彙整到一張只能看、不能改的總表,並依到期日自動寄信提醒。專案逾期率 35% → 12%(客戶自述)。
誰在用
一家中型製造業,10 個以上部門(行銷、業務、產品開發、客服、財務等),由專案經理與各部門主管共同追蹤專案。
原本怎麼做
每個部門用不同工具記專案進度,有人用 Excel、有人用 Trello、有人用 Notion,還有人用紙本。專案經理要逐一詢問各部門負責人才知道整體進度,每次彙整就要花半天,而且資訊經常過時。共用 Excel 常發生誤刪他人資料,同一份文件有好幾個版本,不同部門對同一專案的進度認知也不同。主管只能等週會才知道問題,往往為時已晚。
前後對比
量測:實測=有計時或有紀錄;估計=喜特先生推估;客戶自述=客戶回報;規格=設計上的固定條件;待補=尚未取得數字。
流程一眼看懂
各部門各用 Excel、Trello、Notion、紙本
專案經理逐一詢問
手動彙整(約半天)
週會才得知問題
部門試算表(各自編輯)
自動同步
唯讀主控台
逾期與到期提醒郵件
流程示意:依本案既有做法整理,非客戶實際畫面。
做了什麼
- 三層架構:主控台唯讀給主管看,部門表各自編輯,歷史資料另放受保護的資料庫層。
- 主管用下拉選單篩選部門、狀態、優先順序或負責人,快速聚焦需要關注的項目。
- 權限分級:誰能改什麼寫死在權限裡,不靠大家自律。
- 顏色警示:逾期、快到期、提前完成、有阻礙,各有固定顏色。
- 每天自動檢查,快到期或狀態更新時寄信通知相關人員。
程式碼與實作細節收在頁面下方,需要時再展開。
你的情況像這樣嗎?
- 各部門各用各的工具,要整體進度就得挨個問。
- 共用檔案常被誤刪或改錯版本。
- 主管想隨時看到全貌,而不是等週會。
更多成果與運作條件
專案逾期率 35% → 12%(客戶自述)
客戶在系統上線三個月後自行回報
主控台自動同步
部門更新後,主控台自動同步,不用再逐一詢問、複製貼上
10+ 部門共用一套系統
行銷、業務、產品、客服、財務等部門共用,不再各用各的工具
- 部門只能編輯自己的專案表:主控台唯讀,標題列與公式欄設為受保護範圍,其他部門的資料不會被誤刪
- 使用 Google Workspace 既有功能:沒有另外購買專案管理軟體
- 進度在主控台看得到:週會可以直接談需要決定的事,不必開會才知道進度
以上為本案既有成果與運作條件;估計值依原始資料標示,其他專案需另行評估,並非通用成效保證。
挑戰:原本遇到的困難
一家中型製造業有 10 個以上的部門(行銷、業務、產品開發、客服、財務等),專案常常要跨部門協作,但進度散在各處:
- 每個部門用不同的工具:有人用 Excel、Trello、Notion,也有人用紙本,進度各記各的
- 要看全貌得逐一詢問:專案經理要問過各部門負責人才知道整體進度,每次彙整要花半天,而且資訊經常過時
- 共用檔案容易出事:共用 Excel 常有人誤刪別人的資料;想限制權限又會讓協作變難。同一份文件還有「最終版」「最終版 v2」「真的最終版」好幾個版本,常有人改到錯的那份
- 對進度的說法不一致:不同部門對同一專案的進度認知不同,開會時常出現「我以為已經完成了」
- 主管只能等週會:平常看不到全貌,問題往往到週會才浮現,已經來不及處理
完整解決方案與設計取捨
用 Google 試算表做三層架構:資料集中管理、權限分級、再加上 Apps Script 自動提醒。全部是 Google Workspace 既有的功能,沒有另外購買專案管理軟體。
核心設計
- 三層試算表:主控台(給主管看的唯讀總表)、部門試算表(各部門編輯自己的專案)、資料庫層(保存歷史紀錄與參考資料,受保護不可編輯)
- 自動彙整:用
IMPORTRANGE(跨試算表匯入資料的函式)把 10 個以上部門試算表的資料彙整到主控台,部門更新後自動同步 - 下拉篩選:主管可在主控台用下拉選單依部門、專案狀態、優先順序或負責人篩選,快速聚焦要關注的項目
- 顏色警示:逾期標紅、3 天內到期標橙、提前完成標綠、有阻礙風險標紫
- 輸入標準化:專案狀態、優先順序、負責部門等欄位都用下拉選單,防止輸入錯誤
- 權限分級:主控台唯讀;部門試算表只有該部門成員能編輯,其他部門唯讀;資料庫層只有系統管理員能編輯
- 自動通知:Apps Script 在專案接近截止日或狀態更新時,寄信通知相關人員
技術與實作細節
展開完整實作說明
先訪談,再設計三層架構
動工前先訪談各部門主管,了解各自要追蹤什麼:
- 行銷部:活動專案的執行進度與預算使用狀況
- 產品部:功能開發的優先順序與上線時間
- 業務部:客戶專案的交付狀態與回款進度
- 客服部:客訴案件的處理進度與解決率
需求不同,但都要「各部門自己維護、主管看得到全貌」。所以分成三層:
| 層 | 誰用 | 權限 | 內容 |
|---|---|---|---|
| 主控台 | 高階主管、各部門主管 | 唯讀 | 全公司專案總覽、篩選、警示 |
| 部門試算表 | 各部門成員 | 該部門可編輯,其他部門唯讀 | 該部門自己的專案資料 |
| 資料庫層 | 系統管理員 | 僅管理員可編輯 | 歷史紀錄與參考資料 |
主控台:把各部門的資料彙整在一起
主控台的總覽表用 IMPORTRANGE 從各部門試算表抓資料,合併後依截止日期排序,不需要人工複製貼上:
=QUERY({
IMPORTRANGE("行銷部試算表網址","專案清單!A2:J");
IMPORTRANGE("產品部試算表網址","專案清單!A2:J");
IMPORTRANGE("業務部試算表網址","專案清單!A2:J")
},
"SELECT * WHERE Col3 IS NOT NULL
ORDER BY Col5 ASC", 0)主控台頂部有篩選區,用資料驗證做成下拉選單,可依部門、狀態(進行中/已完成/延遲/暫停)、優先順序(高/中/低)與負責人篩選。
顏色警示用條件格式設定,主管不用逐行檢查,就看得出要關注的專案:
- 截止日期欄: 標紅(已逾期)
- 截止日期欄: 標橙(3 天內到期)
- 專案狀態欄:包含「風險」或「阻礙」標紫
- 完成度欄: 標綠
部門試算表:欄位標準化,但允許客製
每個部門各有一張試算表,核心欄位統一,各部門可以再加自己需要的欄位。
| 專案編號 | 專案名稱 | 負責人 | ... |
|---|---|---|---|
| 流水號 | A 專案 | 某某某 | ... |
- 資料驗證防呆:所有下拉選單的來源清單,統一維護在隱藏的「參數設定」工作表,日後調整只改一處
- 完成度顏色:0–30% 紅、31–70% 橙、71–99% 黃、100% 綠
- 協作備註:每列最右側保留備註欄,用試算表的「註解」功能討論特定專案,並用
@標註相關人員
權限怎麼設
| 位置 | 誰 | 權限 |
|---|---|---|
| 主控台 | 高階主管、各部門主管 | 可檢視者(唯讀) |
| 主控台 | 系統管理員 | 編輯者 |
| 部門試算表 | 該部門成員 | 編輯者 |
| 部門試算表 | 其他部門成員、高階主管 | 可檢視者(唯讀) |
另外,每個部門試算表的標題列、公式欄位與自動計算欄位,都設為「受保護範圍」,只有系統管理員能編輯,避免誤刪公式。
自動通知與歷史資料
Apps Script 做三件事:
- 每日檢查: 用「時間驅動觸發條件」(Apps Script 的排程功能),每天早上 9:00 自動檢查專案
- 狀態通知: 專案狀態變成「已完成」時,通知相關人員與主管;新專案建立時,寄信給負責人確認
- 每週清單: 週五下午自動產生「下週即將到期專案清單」,寄給各部門主管
狀態變成「已完成」的專案,會由腳本自動搬到資料庫層的「歷史資料庫」工作表:
function archiveCompletedProjects() {
const ss = SpreadsheetApp.getActiveSpreadsheet();
const activeSheet = ss.getSheetByName('專案清單');
const archiveSheet = ss.getSheetByName('歷史資料庫');
const data = activeSheet.getDataRange().getValues();
for (var i = data.length - 1; i > 0; i--) {
if (data[i][3] === '已完成') {
archiveSheet.appendRow(data[i]);
activeSheet.deleteRow(i + 1);
}
}
}上線前的培訓與上線後的調整
系統上線前辦了三場培訓:
| 對象 | 時間 | 內容 |
|---|---|---|
| 高階主管 | 30 分鐘 | 使用主控台篩選與查看專案、解讀儀表板數據、快速識別風險專案 |
| 部門主管 | 1 小時 | 新增與更新專案、下拉選單與資料驗證、在專案中 @ 標註成員、權限注意事項 |
| 一般使用者 | 45 分鐘 | 系統操作基礎、常見錯誤與解決方法、Q&A 與實作練習 |
同時製作操作手冊與常見問題文件,放在 Google 雲端硬碟供同仁查閱。
上線後建立回饋機制:每月收集使用者意見、分析系統使用情況(哪些功能最常用、哪些從未使用)、每季調整一次(新增欄位、調整公式、改善介面),並記錄所有版本更新、通知使用者。