2026年6月7日 星期日

如何利用 Google 試算表與 Apps Script 自訂多元線上訂購單與訂單查詢系統

在網路銷售(例如使用 LINE 群組或社群平台賣東西)的過程中,店家經常需要因應不同的節慶或行銷活動,調整訂購單的內容與優惠方案。例如:平時的活動是「買 10 包送 2 包」;每月 15 號則是「原味買百包送 40 包」;到了母親節或中秋節,又會推出不同的促銷組合。

為了讓商家能輕鬆切換不同的訂購單內容,本篇教學將介紹如何透過 Google 試算表結合 Apps Script,實現動態切換訂購頁面、接收訂單、發送郵件通知,並提供顧客即時查詢訂單狀態的功能。


步驟一:建立與整理 Google 試算表副本

首先,我們需要取得系統的 Google 試算表範本,並將其複製到自己的雲端硬碟中。

  1. 建立副本:開啟分享的試算表連結,將網址後方的 edit... 改為 copy,或直接點選「建立副本」。

  2. 清除測試資料

    • 在「訂單內容」工作表中,將原先測試用的訂單資料整列刪除。

    • 清除後,「訂單明細」與「訂單查詢」等分頁的暫存資料也隨之更新。

  3. 檢視店家設定:在「店家設定」工作表中,您可以設定店家名稱、目前要啟用的頁面名稱(例如:shopshop01shop02 等),以及設定特定促銷期間與訂單顯示筆數。


步驟二:部署 Apps Script 網頁應用程式

為了讓顧客能開啟訂購網頁,我們必須將試算表後台的程式碼部署為網頁應用程式。

  1. 在試算表上方選單點選 「擴充功能」 > 「Apps Script」

  2. 開啟 Apps Script 編輯器後,您會看到預設的 HTML 檔(如 shop.htmlshop01.html 等)與主程式。

  3. 點選右上角的 「部署」 > 「管理部署作業」

  4. 點選 「建立部署作業」(或點選設定圖示確保類型為「網頁應用程式」)。

  5. 調整設定:

    • 執行身份:選擇「您自己」(您的 Google 帳號)。

    • 誰可以存取:務必修改為 「所有人」,這樣外部顧客才能順利開啟網頁。

  6. 點選 「部署」

  7. 授予存取權

    • 系統會要求授權,點選「授予存取權」。

    • 選擇您的 Google 帳號,若出現警告畫面,點選「進階 (Advanced)」>「前往(不安全)」以繼續。

    • 勾選授權項目(例如發送電子郵件、管理試算表權限等),並點選「允許 (Continue)」。

  8. 部署完成後,複製畫面上產生的 「網頁應用程式網址」


步驟三:動態切換訂購網頁與後台設定

將複製的網頁應用程式網址貼至新分頁開啟,即可看到預設的訂購單畫面。

  • 動態頁面切換
    若您在試算表的「店家設定」中,將「目前使用頁面名稱」從 shop 改為 shop01(對應每月中秋或特定促銷網頁),接著回到訂購網頁重新整理,網頁的產品內容、促銷標題與價格計算邏輯便會即時更新,不需重新修改 Apps Script 程式碼。


步驟四:下單實測與顧客訂單狀態查詢

1. 顧客下單與通知

顧客在網頁上填寫姓名、電話、地址與備註,並選擇商品數量後,點選「送出」:

  • 系統會自動計算總金額(包含是否滿額免運費)。

  • 送出後,顧客可以選擇透過 LINE 傳送訂單明細(此功能在手機端支援度較佳)。

  • 同時,店家(或設定的電子信箱)會收到一封包含訂購細節的系統自動確認信。

2. 後台處理與訂單查詢

  • 店家收到訂單後,資料會自動同步寫入 Google 試算表的「訂單內容」中。

  • 顧客可透過網頁底部的 「訂單查詢」 按鈕,查看目前的處理進度。

  • 為避免前端資料遭到竄改,訂單狀態皆由店家在試算表後台進行管理。當店家在試算表中的「訂單狀態」欄位手動更新為「已確認,等待匯款」或「已出貨」,顧客端重新查詢時,狀態便會即時同步變更。


步驟五:利用「計價產生器」自訂專屬訂購單內容

如果您想要更換不同的商品菜單(例如改為麵線糊店家),可使用自訂的「計價產生器」工具來產生新的 HTML 原始碼。

  1. 開啟「計價產生器」工具頁面。

  2. 根據您的商品、價格、口味選項(如加不加香菜、辣度等)進行設定。

  3. 產生網頁後,先進行下單測試,確認計算邏輯無誤。

  4. 在網頁任意處按右鍵,點選 「檢視網頁原始碼」

  5. 使用快捷鍵 Ctrl + A 全選,並 Ctrl + C 複製所有原始碼。

  6. 回到您的 Google Apps Script 編輯器,在對應的 HTML 檔案中(例如 shop.html),將原有內容全選刪除,並貼上剛剛複製的新原始碼,接著存檔。

  7. 重新部署

    • 點選「部署」>「管理部署作業」。

    • 點選編輯按鈕(筆形圖示),並在版本下拉選單中選擇 「新增版本」(可備註例如「修改訂購單」)。

    • 點選「部署」完成更新。

  8. 重新整理訂購網頁,您的專屬新菜單訂購單即設定完成。


結語

透過這套結合 Google 試算表、Apps Script 與 HTML 計價產生器的系統,中小商家不需要繁雜的後台伺服器,也能建立具有彈性促銷方案的線上訂購平台。顧客下單、店家收信、後台資料處理與訂單狀態查詢,皆可在雲端協作工具中完成,提供了一個兼具便利性與低成本的微型電商處理解決方案。



2026年5月30日 星期六

【Google 試算表小秘訣】別再手動改資料了!教你用 REGEXREPLACE 打造專業、保密的訂單查詢系統

 在數位時代,資料即是資產,但處理不當就會變成負債。許多賣家在訂單量增加後,仍習慣手動整理資料,這不僅效率低下,更隱藏著巨大的「個資外洩」風險。想像一下,若為了讓客戶查詢進度而公開整份試算表,對方的姓名、電話、住址將毫無遮掩地暴露在所有人面前,這不僅觸犯《個資法》,更會摧毀品牌信任感。

身為試算表專家,我要教你如何利用 QUERYREGEXREPLACE 這兩大神級函數,打造一個「自動排序」且「自動遮蔽個資」的專業查詢系統。
亮點一:逆轉排序與關鍵字搜尋——讓最新訂單永遠排在第一行
傳統試算表最讓人頭痛的,就是新資料永遠往底部疊加。使用者每次開啟檔案都要「往下拉」才能看到最新狀態,體驗極差。
透過 QUERY 函數,我們可以像建立搜尋引擎一樣,自動抓取原始資料並重新排列。
=QUERY(訂單資料!A:G, "SELECT * WHERE B LIKE '%" & B1 & "%' ORDER BY A DESC", 1)
專家解析:
  1. ORDER BY A DESC:這是系統的靈魂。它能將資料依據時間(假設在 A 欄)進行「降冪排列」,確保最後一筆訂單永遠出現在最上方。
  2. LIKE 關鍵字搜尋:如原始文本所述,透過關鍵字語法(例如在 B1 儲存格輸入「蔡」),系統就能即時過濾出所有與該關鍵字相關的訂單。
亮點二:姓名去識別化——精準的中間遮罩術
在查詢界面,我們需要讓客戶一眼認出「這是我的訂單」,但又不能顯示全名。這時就要動用 REGEXREPLACE(正規表達式取代)來執行精密的「手術」。
「間隔兩個字去取...變成圈圈」 —— 節錄自原始文本
要實現這種效果,我們需要定義「捕捉組」邏輯。以下是處理姓名的公式範例:
=REGEXREPLACE(B2, "(.)(.)", "$1○")
專家技術筆記: 在這個公式中,(.) 代表捕捉任何一個字元。我們將姓名中的兩個字分為一組。
  • $1:代表保留該組中的第一個字。
  • :則是直接取代該組中的第二個字。 透過這種方式,「蔡明和」會變成「蔡○和」,在保留可識別性的同時,有效保護個資。
亮點三:手機與地址的「4+4 密碼」——兼顧客服與隱私的平衡點
對於手機號碼與居住地址,遮蔽邏輯必須更嚴謹。單純遮掉一個字是不夠的,但全遮又會導致無法核對。專家建議採用「保留前後、中間遮蔽」的 4+4 實踐:
「電話我只是前四碼加後四碼,方便識別」 —— 節錄自原始文本
這種處理方式適用於電話與長地址,能確保客服人員在電話中與客戶核對末四碼,卻不讓旁人窺視完整個資。
=REGEXREPLACE(C2, "^(.{4}).*(.{4})$", "$1****$2")
為什麼這對店家管理有好處?
  • 核對快速: 使用者只要比對自己手機的頭尾數字,就能快速確認。
  • 隱私保障: 即使是地址,我們也能遮蔽中間的巷、弄、號碼。
  • 技術實現:
    • ^$:分別代表資料的「開頭」與「結尾」。
    • .{4}:代表抓取「任意字元的四次重複」。
    • .*:代表中間不論長短的所有字元,通通由 **** 取代。
總結與思考
結合 QUERY 的動態排序與 REGEXREPLACE 的智慧去識別化,你就能在 Google 試算表中建立出一套媲美專業系統的查詢模組。這不僅能大幅節省人工調整資料的時間,更能顯著提升企業在處理客戶敏感個資時的安全性。
專業人士與一般人的差別,往往在於是否能運用工具「預防風險」而非僅是「處理資料」。
最後留一個問題給你思考:在你的日常辦公流程中,還有哪些敏感資料(如身份證字號、信用卡末四碼)其實可以透過公式自動遮蔽,而不需要人工介入處理?


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 試算表與 Apps Script 自訂多元線上訂購單與訂單查詢系統

在網路銷售(例如使用 LINE 群組或社群平台賣東西)的過程中,店家經常需要因應不同的節慶或行銷活動,調整訂購單的內容與優惠方案。例如:平時的活動是「買 10 包送 2 包」;每月 15 號則是「原味買百包送 40 包」;到了母親節或中秋節,又會推出不同的促銷組合。 為了讓商家能...