【问题标题】:Change a specific status after a few days from a date从某个日期开始几天后更改特定状态
【发布时间】:2021-08-16 20:24:18
【问题描述】:

我有一个 Google 表格,我们的代理在其中更新了正在发送的电子邮件和收到的回复。如果他们发送电子邮件,他们会将状态更新为“已发送”。如果他们收到已发送电子邮件的回复,他们将根据从下拉列表中收到的回复将状态更改为“客户不感兴趣”或“发送更多详细信息”或其他一些状态。

我们在发送电子邮件时的列中输入日期。从那天起,我们等待三天才能收到回复,如果没有收到,那么“已发送”状态应该会从状态栏中出现的单元格中消失。

基本上,如果我们在发送电子邮件之日起 3 天后没有收到任何回复,则设置为“已发送”的状态应该会消失,我们将其理解为已发送电子邮件的“未收到回复”。

我不擅长脚本。我需要你的帮助来为此添加一个脚本,因为我们每天都会发送许多电子邮件,并且自动化这个特定的事情将对我们有很大帮助。提前致谢。

最好的 乔

【问题讨论】:

标签: google-apps-script google-sheets


【解决方案1】:

您很可能想要使用 onEdit 触发器。 ref

您必须为状态列设置数据验证,这可以通过数据菜单完成。

大多数写得好的 onEdit 函数都与此类似:

function onEdit(e) {//e is population by the triggers event object
  const sh = e.range.getSheet();
  if( sh.getName() == "your sheet name" && e.columnStart == "column number of status column" && e.range.rowStart > "header row"  ) {
    //enter the rest of your code in here and all other edits on this and other pages will not enter this code and be returned as quickly as possible
  }
}

在您了解更多关于 onEdit 的工作原理后,您可能希望重新考虑您希望如何工作,因为好的设计通常是用户界面和软件复杂性之间的折衷。

【讨论】:

  • 感谢库珀。我会检查它是如何工作的。但是,“已发送”状态不会在编辑时更改。如果我们在发送电子邮件之日起 3 天后没有收到收件人的回复,它将变为空白单元格。应用脚本必须查找日期和状态列。如果超过 3 天且状态保持“已发送”,则应删除该特定行/收件人的此状态(再次将该单元格设置为空白)。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-03-13
  • 1970-01-01
  • 2019-03-07
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多