javascript - 应用程序脚本 - 为时间戳大于上一个函数运行的行运行函数
问题描述
我有一张由多个用户不断编辑的 2000 行和 60 列的工作表。我必须每 10 分钟将这张表同步到另一张表,所以我编写了以下脚本来执行此操作。
// Sync Sheet
// Monday through Friday between 9am and 6pm
function TriggerSync() {
var date = new Date();
var day = date.getDay();
var hrs = date.getHours();
if ((day >= 1) && (day <= 5) && (hrs >= 9) && (hrs <= 18)) {
// Sync
var sourceSpreadSheet = SpreadsheetApp.getActiveSpreadsheet();
var srcSheet = sourceSpreadSheet.getSheetByName("Overview");
//destination spreadsheet (Intermediate)
var destinationSpreadSheet = SpreadsheetApp.openById('Spreadsheet ID');
var destSheet = destinationSpreadSheet.getSheetByName("intermediate");
//get Data from Souce Sheet
var values = srcSheet.getRange(5, 2, 2000, 60).getValues();
//dump
destSheet.getRange(2, 3, 2000, 60).setValues(values);
}
}
这工作正常,但正如您可以想象的那样,复制所有这些数据,无论它自上次同步以来是否已更改,都会花费大量时间并导致函数超时。我现在计划在第 62 列中写一个时间戳,然后只同步时间戳大于上一个函数运行的行。
但在这里我不知从何开始。感谢有关如何开始的任何帮助。
提前致谢
解决方案
推荐阅读
- docker - 需要在 ubuntu “docker-compose up -d” 中升级我的 docker 文件
- apache - 除了主目录之外,是否可以在 Ubuntu 上更改 Apache Web 根目录?
- javascript - 在 chrome 扩展中运行 Python?
- c++ - clang-cl 错误:lld-link:错误:未定义符号:__divti3
- python - django中HTML条件渲染的好习惯?
- reactjs - 在 React 中使用 Sanctum 的密钥
- javascript - 我可以使用 JOI 跨不同对象使用验证唯一键吗?
- groovy - Groovy 附加“。” 插值变量时
- spring-boot - 为什么 SonarQube 在使用 @SuperBuilder 时会说“可能通过合并对可变对象的引用来暴露内部表示”。?
- desire2learn - brightspace/d2l 是否有获取所有 CanSelfRegister 课程的 API