2026年5月23日 星期六

告別手動複製貼上!Google 試算表高手才知道的「訂單自動拆解術」

 1. 引言:被淹沒在訂單資料裡的你,需要更聰明的做法

你是否曾經面對過這樣的畫面:從系統匯出的訂單資料中,產品名稱、數量、單價全部擠在同一個儲存格裡,中間只用簡單的分號隔開?為了計算庫存或整理報表,你只能苦命地動用「複製、貼上」大法,一筆一筆將資料拆分到正確的欄位。這種重複性的體力活不僅耗時,更容易因為一時眼花而導致帳務錯誤。
試想一下,如果你只需在第一列寫好一次公式,往後不論湧入多少訂單,所有欄位都能自動歸類、精準到位,你的工作效率會提升多少?今天,身為自動化顧問,我要教你如何運用 Google 試算表的進階組合技,將混亂的原始文字轉化為專業的數據系統。
2. 重點一:Regex 就像雷射手術,精準切割你需要的內容
在處理格式混亂的文字時,傳統的搜尋功能往往顯得力不從心。這時我們需要 REGEXEXTRACT 函數,它能根據特定的規則(正規表示法)抓取字串。
最有效的邏輯之一是「排除法」,公式中常見的符號是 [^;]+。對於非技術人員來說,這看起來像外星語,但它的邏輯非常直覺:
  • 括號內的 ^ 符號代表「排除」。
  • ; 代表分號。
    • +代表「一個或多個字元」。
合併起來的意思就是:抓取除了分號以外的所有內容,直到遇到下一個分號為止才停止。
「抓到除了分號以外的字都抓出來...抓到分號它就抓出來了」
這種「排除法」在處理變動長度的文字時特別強大,不論產品名稱是三個字還是十個字,公式都能像雷射手術般精準切割,不留贅詞。
3. 重點二:括號的魔力——只拿走「精華」,不留下「贅詞」
原始資料通常帶有標籤,例如「產品:香純滴雞精」。如果我們直接抓取,欄位裡會連同「產品:」這三個字一起存入。但為了後續能製作樞紐分析表或自動加總,我們必須確保資料的「純淨度」。
這就是 REGEXEXTRACT 中「小括號 ()」大顯身手的時刻。在正規表示法中,小括號代表「擷取群組」。當我們搜尋「產品:([^;]+)」時,公式會掃描整段文字,但只會把括號內的「精華」回傳到儲存格中。
「左括號跟右括號是我要擷取的內容...我只要擷取這一塊就好了」
透過定義擷取群組,我們能過濾掉多餘的標籤文字,確保進入資料庫的每一筆資訊都是乾淨、可直接運算的純數據。
4. 重點三:進階技巧——確保數字能被「算出來」
身為效率專家,我必須提醒你一個常見的坑:REGEXEXTRACT 擷取出來的結果預設是「文字」。如果你擷取的是「數量」,而該儲存格被視為文字,你就無法對它進行加總或計算。
因此,在處理數量欄位時,高手會使用 [0-9]+ 來精準定位數字,並在公式最外層套用 VALUE 函數。這能確保擷取出來的「10」不僅僅是長得像數字的文字,而是真正具備數學意義、可以被計算的數值。
5. 重點四:Array Formula 讓公式「自動繁殖」到整欄
當你學會了精準擷取,下一個挑戰是如何處理成千上萬筆資料。如果你還在用滑鼠按住儲存格右下角往下拖曳公式,那就太慢了。
ARRAYFORMULA(陣列公式)能讓你的公式具備「自動繁殖」的能力。透過將範圍設定為 A2:A(代表從第二列到該欄的最末端),你只需在第一列輸入一次公式,它就會自動應用到後續新增的所有列位。這不僅省力,更能維持「資料完整性」,避免因人為遺漏下拉公式而導致報表缺漏。
6. 重點五:IFERROR 是讓報表變專業的最後一道防線
一個專業的自動化系統,必須考慮到「容錯性」。在設定了陣列公式後,如果下方的儲存格還沒有訂單內容,試算表通常會顯示 #N/A 的錯誤訊息,讓整份報表看起來雜亂無章。
這時我們需要加上 IFERROR 函數。它的作用像是一道濾鏡,當公式判斷該列目前沒有資料時,就自動顯示為空白(使用雙引號 "" 表示)。這能讓你的報表始終保持視覺上的整潔與專業感,讓主管或客戶感受到系統的細膩度。
7. 結論:從「資料處理者」進化為「系統設計者」
透過 REGEXEXTRACT 的精準切割、括號的擷取技術、ARRAYFORMULA 的自動擴充,以及 IFERROR 的視覺優化,你已經成功建立了一套強大的「訂單自動拆解系統」。
這項轉變的意義不只是省下幾分鐘的時間,而是讓你從一個疲於奔命的「資料處理者」,進化成一個能優化流程、確保數據精確的「系統設計者」。當你的試算表具備了自動思考與處理的能力,你會把省下來的時間,投入到哪些更有價值的決策或創意工作上呢?
--------------------------------------------------------------------------------
實戰公式範例:
擷取純產品名稱(排除標籤): ARRAYFORMULA(IFERROR(REGEXEXTRACT(A2:A, "產品:([^;]+)"), ""))
擷取數量並轉為可計算數值(使用 VALUE 轉換): ARRAYFORMULA(IFERROR(VALUE(REGEXEXTRACT(A2:A, "數量:([0-9]+)")), ""))


沒有留言:

張貼留言

告別手動複製貼上!Google 試算表高手才知道的「訂單自動拆解術」

  1. 引言:被淹沒在訂單資料裡的你,需要更聰明的做法 你是否曾經面對過這樣的畫面:從系統匯出的訂單資料中,產品名稱、數量、單價全部擠在同一個儲存格裡,中間只用簡單的分號隔開?為了計算庫存或整理報表,你只能苦命地動用「複製、貼上」大法,一筆一筆將資料拆分到正確的欄位。這種重複性...