You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何让指定Google Apps Script仅在工作日10:00-17:00每小时触发?

实现工作日特定时段每小时触发Buy函数的代码修改方案

一、修改原Buy函数,添加时间校验逻辑

在原函数开头加入时间检查,确保只有符合条件的时段才执行核心逻辑(即使手动运行或触发器异常触发也会过滤):

function Buy() {
  // 新增:时间与日期校验
  const now = new Date();
  const dayOfWeek = now.getDay(); // 0=周日,1=周一,...,5=周五,6=周六
  const hour = now.getHours();
  
  // 仅在周一至周五(1-5)的10:00-17:00之间执行
  if (dayOfWeek < 1 || dayOfWeek > 5 || hour < 10 || hour >= 17) {
    return; // 不符合条件直接退出
  }

  // 原函数逻辑保持不变
  var ss=SpreadsheetApp.getActive();
  var sheet=ss.getSheetByName("Buy");  
  var Cvalues=sheet.getRange(2,3,sheet.getLastRow()-1,1).getValues();
  var Avalues=sheet.getRange(2,1,sheet.getLastRow()-1,1).getValues();
  var results=[];

  for(var i=0;i<Cvalues.length;i++){
    if(Cvalues[i][0]<=-3){
      results.push(" "+ Avalues[i]);
      results.push("Price "+ Cvalues[i]);
      MailApp.sendEmail('email@gmail.com', 'Buy Alert',results.join("\n")); 
    }
  }
}

二、添加创建定时触发器的函数

运行这个函数一次,即可创建符合要求的时间驱动触发器:

function createHourlyBuyTrigger() {
  // 先删除已有的Buy函数触发器,避免重复创建
  const existingTriggers = ScriptApp.getProjectTriggers();
  for (const trigger of existingTriggers) {
    if (trigger.getHandlerFunction() === "Buy") {
      ScriptApp.deleteTrigger(trigger);
    }
  }

  // 创建新的触发器:每小时触发,仅工作日10:00-17:00
  ScriptApp.newTrigger("Buy")
    .timeBased()
    .everyHours(1) // 每小时触发
    .duringHours(10, 17) // 限定在10点到17点之间
    .onWeekDay(ScriptApp.WeekDay.MONDAY)
    .onWeekDay(ScriptApp.WeekDay.TUESDAY)
    .onWeekDay(ScriptApp.WeekDay.WEDNESDAY)
    .onWeekDay(ScriptApp.WeekDay.THURSDAY)
    .onWeekDay(ScriptApp.WeekDay.FRIDAY)
    .create();
}

操作步骤说明

  1. 将修改后的Buy函数替换原代码,把createHourlyBuyTrigger函数添加到脚本中。
  2. 在脚本编辑器中,选择createHourlyBuyTrigger函数,点击运行按钮,完成首次授权(需要允许脚本访问相关权限)。
  3. 授权完成后,触发器自动创建,后续Buy函数会在工作日的10:00-17:00期间每小时自动执行一次。

注:若要调整时段或触发频率,可修改duringHours和everyHours的参数;如需删除触发器,可在脚本编辑器的「编辑」→「当前项目的触发器」中管理,或再次运行createHourlyBuyTrigger函数(会自动删除旧触发器并创建新的)。

内容的提问来源于stack exchange,提问作者DPK

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.09 13:45:27