【问题标题】:GoogleScripts - How to send email based on cell valueGoogle Scripts - 如何根据单元格值发送电子邮件
【发布时间】:2020-08-26 14:28:26
【问题描述】:

我是 Google 脚本的初学者,希望根据 Google 表格中的单元格值发送电子邮件。

确定是否要发送电子邮件的单元格是工作表“FloodEWS”中的 C2。

如果值等于或大于 270,我需要发送特定的电子邮件。 如果值等于或大于 310,我需要发送不同的电子邮件。

我目前的脚本是这样的:

function amberwarning() {
  // Fetch the combined flow value
  var combflowrange = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("FloodEWS").getRange("C2"); 
  var combflow = combflowrange.getValue();
  // Check combined flow value
  if (270 < combflow < 310){
    // Fetch the email address
    var emailRange = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Email").getRange("A2");
    var emailAddress = emailRange.getValues();
    
    // Send Alert Email.
    var message = 'It is possible that the Egger site will experience flooding in the coming hours. The advice is to be prepared to take action as combined river flows can increase very quickly during storms. Please keep up to date with the latest river levels for Hexham at <https://flood-warning-information.service.gov.uk/station/9006>. The latest flood warnings from the Environment Agency for Hexham are here <https://flood-warning-information.service.gov.uk/warnings?location=+hexham>. The latest MetOffice weather forecast can be found here <https://www.metoffice.gov.uk/weather/forecast/gcy2xzrne#?>. Please use all available information to inform your decision making. You will keep receiving an email as per each refresh of the latest data. The current combined flow from the North and South Tyne is' + combflow;
    var subject = 'Amber flood warning';
    MailApp.sendEmail(emailAddress, subject, message);
    }
}

任何帮助将不胜感激。

【问题讨论】:

    标签: json google-apps-script google-sheets conditional-formatting


    【解决方案1】:

    假设:

    • 如果值大于等于270且小于310,则发送消息1。

    • 如果值大于等于310,发送消息2。

    • 还有什么,发个错误信息吧。

    • 根据您的要求修改脚本。

    使用的表:

         A          B         C
    ---------------------------------
    1    RHF        HBF       CF
    2    72.25      63.95     311
    3       
    4    RL         HBL       HL
    5    1.566      1.015     32.014
    
    function val() {
    var sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Sheet8")
    var range = sheet.getRange(1, 1, 5, 3);
    var data = range.getValues();
    var combinedFlow = data[1][2];
    
    var customMsg_1 = "Hey Level 1" ;
    var customMsg_2 = "Hey Level 2" ;
    
    if (combinedFlow >= 270 && combinedFlow < 310)
      message = customMsg_1;
      
    else if (combinedFlow >= 310)
      message = customMsg_2;
      
    else
      message = "error in script";
      
    MailApp.sendEmail("user@email.com", "Combined Flow", message);
    
    }
    

    【讨论】:

    • 非常感谢您的帮助。我猜唯一不是这样的情况是,如果组合流
    • 请使用我当前的代码查看上面已编辑的消息
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多