首页 > 解决方案 > 在其他电子表格中添加行时触发功能

问题描述

我对 Google App Script 中的触发器有疑问。我有一个包含我的用户和其他东西的电子表格(appSheet),还有一个包含所有数据的电子表格(dataSheet)。

我还构建了一个脚本,将一些数据从“appSheet”导入到“dataSheet”,效果很好。问题是当在应用表中添加新行(用户)时,我需要它自动执行。Google App Script 中的内置触发器不允许我设置这种触发器。

我在 dataSheet 中设置了这个导入功能,也许我应该在 appSheet 中设置它?这似乎超级简单,但我是新手:)

有人了解如何自动触发该功能吗?

非常感谢 !

标签: google-apps-scriptgoogle-sheetstriggerseventtrigger

解决方案


谢谢你们的回答!我找到了一种非常简单的方法来实现这一点。

我没有在dataSheet上设置脚本并需要“onEdit”触发器,而是将脚本放在appSheet中并进行了少量修改。

脚本如下:

function exportData() {

  var ss = SpreadsheetApp.getActiveSpreadsheet();
  var values = ss.getSheetByName('mySourceSheet').getRange('A2:B').getValues();

  var dataSheet = SpreadsheetApp.openById("myDestinationSpreadsheet");
  var targetSheet = dataSheet.getSheetByName("myDestinationSheet");

  targetSheet.getRange(2,1,values.length,values[0].length).setValues(values);
}

“targetSheet.getRange”中的“2”表示我希望它从第 2 行开始。

借助 Apps Script 中的内置触发器,现在一切都可以完美运行。


推荐阅读