2025年8月3日 星期日

【Google教學】輕鬆搞定Google App Script系統時區,解決Line Notify、Gmail時間誤差

在開發Google App Script應用時,您是否曾遇過發送到Line Notify或Gmail的時間與您所在地區時間不符的問題?這通常是因為App Script的系統時區預設為美國時區(GMT-05:00)所導致。本文將引導您如何正確設定系統時區,確保您的腳本在執行時間相關操作時,都能顯示正確的時間。

問題根源:系統時區差異

許多使用者,特別是在亞洲地區的開發者,會發現透過App Script觸發的服務(如Line Notify或Gmail),其顯示的時間會與台灣的時區(GMT+08:00)相差13個小時。這是因為Google App Script的執行環境,預設是在Google的伺服器上,其時區通常是美國的標準時間。

解決方案:切換至傳統編輯器調整時區

雖然新版的Google App Script編輯器介面更為現代化,但在時區設定上,目前最直觀的方式是暫時切換回傳統編輯器來進行調整。以下為詳細步驟:

  1. 開啟您的Google App Script專案

    • 進入您的Google試算表,點選「擴充功能」>「Apps Script」開啟您的專案。

  2. 切換至傳統編輯器

    • 在新版編輯器的右上角,點擊「使用傳統編輯器」按鈕。系統可能會詢問您切換的原因,您可以選擇性地回覆或直接提交。

  3. 調整專案屬性

    • 切換至傳統編輯器後,點擊左上角的「檔案」選單,並選擇「專案屬性」。

  4. 設定正確時區

    • 在「專案屬性」的視窗中,您會看到「時區」的選項。點擊下拉選單,將其從預設的「(GMT-05:00) 美國東部時間」更改為您所在的時區,例如「(GMT+08:00) 台北」。

    • 點擊「儲存」以保存您的設定。

  5. 切換回新版編輯器

    • 設定完成後,您可以選擇繼續使用傳統編輯器,或點擊上方的「使用新版編輯器」切換回新介面。

完成以上步驟後,您的Google App Script專案的系統時區就已成功設定。未來,無論是透過Line Notify發送通知,或是經由Gmail寄送郵件,其時間戳記都將會以您所設定的時區為準,解決時間不一致的問題。

範例程式碼與驗證

您可以使用以下的簡單程式碼來驗證時區是否設定成功:

function test() {
  Logger.log(SpreadsheetApp.getActiveSheet().getRange("A1").getValue());
}

這段程式碼會讀取您目前啟用中試算表A1儲存格的值,並將其記錄在執行紀錄中。您可以在A1儲存格中輸入 =NOW() 來取得當前時間。執行此腳本後,您可以在「執行紀錄」中看到,輸出的時間已從原本的GMT-05:00轉為您所設定的GMT+08:00。

透過這個簡單的調整,您就能確保所有與時間相關的自動化流程都能順利且準確地運作。 


<新版設定>.要開啟專案屬性[點選 appssript.json], 左邊檔案清單,會出現appsscript.json,店進去修改timeZone時區 ,> 改成Asia/Taipei




沒有留言:

張貼留言

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

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