2025年4月14日 星期一

Google 表單教學:如何讓使用者查詢訂單狀態?用 QUERY 函數搞定!

 今天我們要來解決一個 Google 表單常用的問題:當使用者透過 Google 表單下了訂單或進行了登記(例如:贊助、報名),他們通常會想知道目前的處理狀態,但 Google 表單回應的試算表預設是按照「提交時間」由舊到新排序,而且包含了所有欄位的原始資料,直接分享給使用者看既不方便又不安全。

這篇教學將教你如何利用 Google Sheets 強大的 QUERY 函數,建立一個獨立、安全、且方便使用者查看的訂單狀態頁面。

遇到的問題:

  1. Google Sheets 的表單回應預設是「時間戳記」由小到大(舊到新)排序,使用者想看最新的資料需要捲動到最下方。

  2. 直接分享原始回應試算表,會暴露所有提交者的所有資料,有隱私疑慮。

  3. 管理者可能需要在表單回應中加入處理狀態(例如:已付款、已出貨、處理中),但也只想讓使用者看到部分資訊。

解決方案:使用 

QUERY 函數可以讓我們像操作資料庫一樣,篩選、排序、並選取 Google Sheets 中的特定資料,產生一個新的檢視表。

操作步驟:

步驟一:開啟 Google 表單回應試算表

  1. 在你的 Google 表單編輯頁面,點擊「回覆」分頁。

  2. 點擊綠色的 Google Sheets 圖示(「在試算表中查看回覆」)。這會開啟或建立一個連結到此表單的回應試算表(以下稱「原始回應工作表」,影片範例中名稱為 表單回應 1)。

步驟二:(建議) 在「原始回應工作表」新增狀態欄位

如果你需要追蹤訂單狀態,可以在「原始回應工作表」的最右邊新增一個欄位,例如「處理狀態」或「是否回饋成功」。當你處理完一筆訂單後,可以直接在這裡更新狀態。

  • 重要: 狀態的更新必須在「原始回應工作表」進行。

步驟三:新增一個「查詢結果」工作表

  1. 在 Google Sheets 視窗下方,點擊「+」(新增工作表)按鈕。

  2. 對著新產生的工作表分頁(例如 工作表4)點擊右鍵,選擇「重新命名」,將它命名為容易理解的名稱,例如「訂單狀態查詢」或影片中的「結果」。

步驟四:在「查詢結果」工作表使用 

  1. 點擊「訂單狀態查詢」(或你命名的)工作表的 A1 儲存格。

  2. 在資料編輯列(fx)輸入以下公式:

    =QUERY('原始回應工作表名稱'!A:F, "SELECT * ORDER BY A DESC", 1)
    • '原始回應工作表名稱'!A:F:這部分需要修改成你實際的設定。

      • '原始回應工作表名稱':改成你步驟一開啟的試算表分頁名稱,例如影片中的 '表單回應 1'。記得前後要加單引號。

      • A:F:代表你要查詢的資料範圍,從 A 欄到 F 欄。請根據你的「原始回應工作表」實際包含的欄位調整,例如 A:G (如果包含新增的狀態欄 G)。

    • "SELECT * ORDER BY A DESC":這是查詢指令。

      • SELECT *:代表選取 A:F 範圍內的所有欄位 (* 是萬用字元)。如果你只想顯示特定欄位,可以改成 SELECT A, B, F(只顯示 A、B、F 欄)。影片後段有示範改成 SELECT A, B, C, D, E, F 或 SELECT *

      • ORDER BY A DESC:代表根據 A 欄(通常是時間戳記欄位)進行排序(ORDER BY A),DESC 代表遞減(Descending),也就是由新到舊排序。如果你的時間戳記不是 A 欄,請修改 A

    • 1:代表你的資料範圍中,第一列是標頭列,QUERY 會將它一起顯示出來。

  3. 按下 Enter,你會看到「原始回應工作表」的資料已經被複製過來,並且最新的資料顯示在最上面

步驟五:隱藏「原始回應工作表」

為了避免使用者誤看到原始資料,可以將原始工作表隱藏起來。

  1. 在 Google Sheets 視窗下方,對著「原始回應工作表」(例如 表單回應 1)的分頁標籤點擊右鍵。

  2. 選擇「隱藏工作表」。

步驟六:設定共用權限

現在要讓使用者可以「檢視」這個結果。

  1. 點擊 Google Sheets 右上角的「共用」按鈕。

  2. 在「一般存取權」區塊,將權限從「限制」改為「知道連結的任何使用者」。

  3. 確認右邊的權限是設定為「檢視者」(非常重要!避免使用者修改內容)。

步驟七:複製並提供連結

  1. 點擊「複製連結」。

  2. 點擊「完成」。

  3. 將這個複製好的連結提供給你的使用者:

    • 方法一 (推薦): 回到 Google 表單設定頁面,進入「設定」>「回應」>「提交後顯示的訊息」(或類似選項),將連結貼在這裡,並加上說明文字,例如:「感謝您的訂購!您可以點擊此連結查看最新訂單狀態:[貼上連結]」。

    • 方法二: 將連結直接放在你的網站、粉絲頁或其他公告管道。

完成!

現在,使用者提交表單後,可以在確認訊息中點擊連結,或是之後隨時透過你提供的連結,看到一個經過排序、只顯示必要欄位(如果你在 SELECT 中有指定)、且無法編輯的訂單狀態頁面了!管理者只需要在「原始回應工作表」更新狀態即可。

這個方法大大提升了使用者體驗和資料安全性,希望對你有幫助!




範例連結 (來自影片):

  • 原始表單/網站頁面:http://books.bestdaylong.com/

  • 查詢結果共用連結 (示意): https://docs.google.com/spreadsheets/d/1e7cJxa-TYDpuE6SPfaModXKSSCUM5bUYg1xNpyHIyIE/edit?usp=sharing (實際應用時權限應設為僅供檢視)

沒有留言:

張貼留言

注意:只有此網誌的成員可以留言。

【AppSheet 教學】如何利用 Copilot 設定欄位條件格式化 (變更顏色、圖示、文字樣式)

今天這篇 AppSheet 教學,源自於有網友在我之前的影片留言,詢問如何將特定欄位(例如「高壓」欄位)的文字根據條件顯示成不同顏色(例如藍色)。這確實是一個很實用的功能,可以讓使用者快速識別重要資訊。 這次,我嘗試利用 Microsoft Copilot 來尋找解答,並將這個過...