当列中的单元格具有一定价值时自动发送电子邮件

我有一个专栏 , 上面有我用来做信号的文本。 当列中的单元格值有"signal1"或"Singal2"文本时,发送标题为"signals被发现"的电子邮件。 在扫描列时 , 任何其他单元格期望的"signal1"或"signal2"都可以忽略。

我只有一个手机信号 :

 function CheckSignals() {

   // Fetch data
   var dataRange = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Signal").getRange("H2:H29"); 
   var data = dataRange.getValue();

   // Check for signals
   if (data = "Go Short" || "Go Long"){

     // Fetch the email address and send
     var emailRange = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Email").getRange("C2");
     var emailAddress = emailRange.getValues();

     // Send Alert Email.
     var message = 'Signal1 ' + data; // Second column
     var subject = 'Signals were found';
     MailApp.sendEmail(emailAddress, subject, message);
     }
 }

但这太简单了... 有两个信号我必须扫描在专栏 :"Singal1"和"Signal2"。

例如 , 如果对 H栏进行扫描 , 发现三个"Signal1"和/或"Signal2"。 电子邮件内容应该包含从整个行中找到的每个单元格的信息。

电子邮件 :

目标 : 发现信号

信息 :

在下列行中发现了信号 1 , 数据如下 : 第6 行 A栏的数据、第6 行 B栏的数据、第6 行 C栏的数据、第6 行 D栏的数据 , 直至 H栏

Row11: brown, 丹佛, 23, 1967, 11:00, 34 等。

电子表格总是有 29 行 , 第一行是标题。 电子表格有 9 栏 (A - H) 。


EN From: Automatically email when a cell in column has certain value

8 Comments

    • 当"H2:H29"列的值为Go ShortGo Long时,您希望检索行。
      • 数值总是在"A2:H29"中。
    • 您希望将检索到的行作为一封电子邮件发送。

    如果我的理解是正确的, 那么这个修改怎么样?

    修改要点 :

    • 首先检索"A2:H29"的数值。 然后检索"H"栏中包括Go ShortGo Long的行。
    • 在此修改的脚本中 , 当检索"H"栏中包括Go ShortGo Long的行时,创建消息的基础。

    修改脚本 :

    function CheckSignals() {
      var ss = SpreadsheetApp.getActiveSpreadsheet();
    
      // Fetch data
      var data = ss.getSheetByName("Signal").getRange("A2:H29").getValues();
    
      // Check for signals
      var contents = data.map(function(e, i) {return e[7] == "Go Short" || e[7] == "Go Long" ? e[7] + " Row " + (i + 2) + ": " + e.join(", ") : ""}).filter(String);
    
      if (contents.length > 0) {
    
        // Fetch the email address and send
        var emailRange = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Email").getRange("C2");
        var emailAddress = emailRange.getValues();
    
        // Send Alert Email.
        var message = contents.join("\n");
        var subject = 'Signals were found';
        MailApp.sendEmail(emailAddress, subject, message);
      }
    }
    

    注 :

    • message 的格式在脚本和问题之间是不同的。 所以在这个修改中 , 需要的值被使用 , 因为我不能理解你想要的正确值。 请根据您的情况修改这个。
    • 我无法理解 var message = 'Signal1 ' + data; // Second column 的含义。

    参考资料 :

    如果我误解了你的问题 , 而这不是你想要的结果 , 我道歉。

    1. 很优雅的解决方案 , 谢谢 ! 你的代码很有道理。 唯一的问题是它不会产生结果。 目前 , 电子表格中确实有不止一个"走短"和没有"走长",但没有发送电子邮件...
    1. 谢谢你的答复。 很抱歉给您带来不便。 关于你回复评论的情况 , 在我的环境中 , 脚本工作和电子邮件可以发送。 很不幸我无法复制你的情况。 您能提供一个复制您的情况的示例脚本和脚本吗 ? 当然 , 请删除您的个人信息。 我想确认一下。 如果你能合作解决你的新问题 , 我很高兴。
    1. 如果你不懂我的英语 , 请告诉我。 我要为此道歉并修改它。 因为为了解决您的问题 , 需要更多的信息来复制您的情况。 你能合作解决你的问题吗 ?
    1. 谢谢你的关心。 可惜对我没用。 我做了一个新的电子表格 , 只是为了再次测试 :
    1. https://drive.google.com/open?id=1YtMDZgGRzDz 38D Sb4464zJODqcgFFy_Qd1hgzCAI
    1. 谢谢你的答复。 当我看到你的共享论文时 , 我注意到它与你的问题不同。 在你的问题上 , 你说 For example, if column H was scanned three "Signal1" and/or "Signal2" was found. The email content should contain information from the whole row for each cell where it was found. 。 而且 , 您的脚本从"H"栏中检索值。 在我修改的脚本中 , 我检查了"H"栏的值。
    1. @Petrus 但在您的共享语法页中 ,"H"栏中找不到Signal1Signal2Go ShortGo Long的值。 我对这种区别感到困惑。 如果我误解了你的问题 , 请告诉我。 所以我想确认一下你想要的输出。 当使用共享的 spreadsheets 时 , 您希望以电子邮件的形式发送哪些值 ? 通过正确理解您想要的输出 , 我想修改脚本。 你能提供吗 ? 如果你能做到 , 请将你的问题包括进来。

More articles:

  • 检查一个细胞的价值 , 相应地改变另一个细胞的价值 , 并发送电子邮件
  • excel: 包含图片。 评论框的参考价值 &电子邮件请求自动提示
  • Python 脚本向具有不同附件的多个收件人发送电子邮件
  • 使用脚本从 gmail 帐户自动发送电子邮件
  • 自动合并 Excel VBA 邮件 - 不发送多封电子邮件
  • 使用 C # 发送电子邮件的问题
  • Python: 向多用户发送电子邮件
  • 使用节点发送电子邮件而不必知道我的密码
  • Django - 发送错误报告电子邮件 , 除了代码
  • 使用 SMTPS (TLS) 通过 gmail (smtp. gmail.com) 发送电子邮件的开放源码图书馆
  • 发送电子邮件
  • 无法从 redmine bitnami 发送电子邮件通知 ( 不是 gmail )
  • 发送网页内容电子邮件
  • 为什么 rails 对象出现在通过 ActionMailer 发送的电子邮件中
  • 如何从 MySQL 5.1 发送电子邮件
  • 发送电子邮件到 SonataAdminundle 编辑
  • 如何使用 ExpressionEngine 将信道数据发送到电子邮件中?
  • 如何在节点 js 中使用 gmail api 发送带有附件的电子邮件 ?
  • 使用数据库在 Java 中发送电子邮件
  • 将谷歌电子表格阵列存储在一个单元格中
  • 在 Azure 使用 SendGrid 发送 @my-domain.com 电子邮件
  • 通过循环发送 python 电子邮件
  • PHP 电子邮件 - 电子邮件不会发送
  • 如何在本地计算机上测试发送带有 Django 注册的电子邮件 ( Mac 10.7 ) ?
  • Java 发送电子邮件 , 如何构建整个项目
  • Google 表单文件上传 - 如何使用表单提交的图片并将其嵌入到电子邮件中
  • 如何用 groovy 模板发送电子邮件到詹金斯?
  • 如何将 Konva 在博客上创建的画布合并 : http 图片 , 这样就可以通过电子邮件发送
  • 如何设置 Jasp软性的 iRreport 来发送自动的. pdf 邮件 ?
  • 在 php.ini 中发送电子邮件的设置是什么 ?