iT邦幫忙

2025 iThome 鐵人賽

DAY 21
0

今天我們來講講GAS的觸發器

程式碼解析

function onEdit(e) {
  var sheet = e.range.getSheet();

  // 限定在「銷售紀錄」這張表才觸發
  if (sheet.getName() !== "銷售紀錄") return;

  var row = e.range.getRow();

  // 抓取該列的完整資料
  var rowData = sheet.getRange(row, 1, 1, sheet.getLastColumn()).getValues()[0];

  var name = rowData[0];   // 第1欄 姓名
  var amount = rowData[1]; // 第2欄 金額
  var status = rowData[2]; // 第3欄 狀態
  var email = rowData[3];  // 第4欄 Email

  // 判斷條件:金額 > 0 且 狀態 = 未付款
  if (amount > 1000 && status === "未付款" && email) {
    MailApp.sendEmail({
      to: email, 
      subject: "付款提醒",
      body: "親愛的 " + name + " 您好:\n\n" +
            "我們發現您有一筆金額為 " + amount + " 的訂單尚未付款。\n" +
            "請盡快處理,謝謝!"
    });
  }
}

但程式碼不太是重點,重點是設置觸發器:
這邊我們設置當我們編輯試算表的時候他會偵測並發信。
https://ithelp.ithome.com.tw/upload/images/20250905/20169466aBsRvcZ7M7.png
這裡是我們試算表的樣子
https://ithelp.ithome.com.tw/upload/images/20250905/20169466h1uWKOJR1C.png
編輯過後會收到
https://ithelp.ithome.com.tw/upload/images/20250905/20169466jiQxG8U37n.png


上一篇
D20 會議室借用與查詢系統
下一篇
D22 進階觸發器應用
系列文
Google App Script雲端自動化與動態網頁實戰23
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言