首页 > 解决方案 > 公式更新单元格时运行 Google 表格脚本

问题描述

经过大量搜索,我已经解决了问题的第一部分:我找到了以下脚本,该脚本从一个范围复制数据并将其添加到另一个工作表中。

但是,它从中复制的范围将通过公式自动更新。所以,我的下一个挑战是 - 如何在单元格更改时让脚本运行?

我相信有一种方法可以“观察细胞”的变化,但我真的不是很技术,所以我无法弄清楚!

可能增加的复杂性 - 我相信“编辑”脚本仅在电子表格打开时运行,对吗?如果是这样,我还需要弄清楚如何让脚本运行以检查定时间隔的新值。

这是我当前的脚本:

 function moveValuesOnly() {
    var ss = SpreadsheetApp.getActiveSpreadsheet();
    var source = ss.getRange("Sheet1!F1:H3");
    var destSheet = ss.getSheetByName("Feuil2"); // Déterminer l'emplacement de la première ligne vide. var destRange = destSheet.getRange(destSheet.getLastRow()+1,1); source.copyTo (destRange, {contentsOnly: true}); source.clear (); 
    }

标签: javascriptgoogle-apps-scriptgoogle-sheetsgoogle-apps-script-addontriggers

解决方案


如何在时间驱动的触发器上运行脚本:

  • 您可以使用已有的脚本
  • 您可以通过以下方式将时间驱动触发器绑定到它
    • 继续Edit -> Current Project's triggers

在此处输入图像描述


  • 选择create new trigger

在此处输入图像描述


  • 指定要绑定触发器的函数
  • 指定触发器应为time-driven
  • 根据需要选择type of time based triggerinterval
  • 点击保存

在此处输入图像描述


推荐阅读