在 Google Sheet 用公式自動轉換星期與標記假日
Table of Contents
#在GoogleSheet實現自動星期轉換
👉 最近常常要弄很多班表,每一個班都要去弄星期幾、標出假日(有在排班的都懂)。雖然手動也是可以填出來,但身為一個科技宅,遇到機械式勞動就會想方自動化,還是努力把它們在Google Sheet上實現🎉
👉 這個 Google 試算表的函式是用來計算指定日期的星期幾,並將其以中文字符(“一”、“二”、“三”、…)表示,當然你要🇯🇵日月火水木金土也行。如果計算過程中出現錯誤(該月沒有31號🙈),則會返回 “NA”。整個函式的運作流程是這樣的:
- 從A1格選擇何年何月,格式需要是YYYY-MM
- 首先計算
WEEKDAY($A1&"-"&TEXT(B2,"00"), 2),找出日期是星期幾(預設回傳1~7)。 - 然後使用
CHOOSE函式,根據WEEKDAY返回的數字選擇相應的中文字符。 - 如果在計算過程中出現任何錯誤,
IFERROR會捕捉到,並返回 “NA”。 - 加條件格式在A2-A31,如果字中有六、日,就把格子底色塗成紅色
完整公式如下:
=IFERROR(CHOOSE(WEEKDAY($A1&"-"&TEXT(B2,"00"), 2), "一", "二", "三", "四", "五", "六", "日"), "NA")
可以把這個公式📏套用在你的A2-A32,然後在B2~B32填1-31 (🕹️試玩連結在一樓)
#
Claude 贊日
協霆分享的這個 Google Sheet 公式展現了醫療工作者對班表管理的實際需求。在醫療現場,排班本質上是約束最優化問題——需要平衡人力配置、法規休息時間、與營運效率。協霆的公式透過 WEEKDAY、CHOOSE、IFERROR 的組合,優雅地解決了日期轉星期的自動化問題。
特別巧妙的是,他同時搭配條件格式自動標記週末,讓排班者一眼就能辨識高風險配置(例如連續值班)。對於醫院人資部門而言,這類工具可大幅減少手工填表的錯誤。進一步,結合 Google Forms 的資料蒐集與 Apps Script,甚至可以自動產生符合勞基法的排班方案。
進階應用:可將此公式擴展至班型自動指派(例如透過 INDEX-MATCH 根據科室需求自動配置日班、小夜、大夜),或整合 Zapier 推送告知值班醫師。推薦醫院資訊部參考 HIMSS 的班表管理最佳實踐,以及開源工具如 Pyomo 進行線性規劃最優化。
原始 Facebook 貼文:連結