google-apps-script - 当公式更改单元格值时触发脚本

标签 google-apps-script triggers google-sheets

我正在使用 Google 脚本,然后在 Google 工作表中的特定列发生更改时发送电子邮件。单元格中的信息可以手动输入,也可以根据其他单元格中的信息使用公式完成。

当手动输入信息时,脚本可以正常工作,但在公式运行时则不行。我已经阅读了它并意识到公式计算不算作编辑,那么如何让脚本运行?

当前设置为在进行编辑时从电子表格触发。

下面是我的脚本中涉及相关列/单元格的部分。

function sendEmail() {
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  var sheet = ss.getActiveSheet();
  var row = sheet.getActiveRange().getRow();
  var cellvalue = ss.getActiveCell().getValue().toString();

   if(sheet.getActiveRange().getColumn() == 12)

脚本中还包含更多内容,因此我没有将所有内容复制到此处。非常感谢。

最佳答案

公式更改时没有可以运行的触发器。

尝试弄清楚,您的公式取决于什么条件:

  1. 如果是手动输入的另一个单元格,则使用这些单元格通过 onEdit 触发其更改
  2. 如果公式从外部导入数据,使用随机或时间函数,最好使用onTime trigger .
  3. 如果公式使用importrange,则转到您导入的范围并查看原始范围,然后返回步骤 1 → 2...

关于google-apps-script - 当公式更改单元格值时触发脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42815059/

相关文章:

google-apps-script - 有没有办法在 Google 幻灯片中使用 Google Apps 脚本获取/添加动画到对象?

mysql - 无法通过 Apps 脚本 (JDBC) 连接到本地 MySQL 服务器

google-apps-script - setBold() 在谷歌脚本中不起作用

sql-server - sql server 中文本之前的 "N"

Mysql/MariaDB 触发器问题和调试

google-apps-script - 通过编程查找合并 Google 表格中的多个范围

javascript - Google Spreadsheet——通过脚本获取共享权限

MySQL 触发器与 if 语句尝试查询不同的表以插入值

regex - 如何计算单元格中的表情符号和符号?

python - 将 Google 表格日期序列值转换为人类可读的日期