google-apps-script - 应用程序脚本检测外部电子表格中的新行插入并获取值
问题描述
如何通过电子表格 1 中的谷歌应用脚本检测电子表格 2 中的新行插入。每当在该电子表格2中插入新行时,我都想获取该行的值。我想获取值的地方是电子表格 1 的脚本。
我在我的电子表格 1 脚本中使用它
var ssId2 = "1Ii0w0RPcaQWKYUDhY**************************";
var ss2 = SpreadsheetApp.openById(ssId2);
在这里,我无法确定插入的新行的范围是多少?
var values = range.getValues();
var row = values[0];
var uname = row[1];
以及如何在仅发生更改时(即仅在插入新行时)插入新行的值。
我已经尝试在整个互联网上搜索并花了几天时间但无法完成。
解决方案
我不建议您在这种情况下使用 onEdit 触发器,特别是如果您有多个可以同时进行更改的用户,因为这个错误。
“您必须假设 onEdit 触发器是尽力而为,但可能无法捕获对电子表格所做的所有编辑。”
您可以使用附加列更新电子表格 2 的工作表并运行脚本,该脚本每 5/10 分钟检查一次。该行是否为空。如果它不为空,则为列(Y/N)分配一些值,然后根据列的状态获取非空行的值并将其设置为电子表格1。
推荐阅读
- java - JPA检查是否为空查询
- android - 对卡在白屏上的模拟器上的本机应用程序做出反应
- c++ - 使用 C++ 中的方法更新外部结构
- php - 如何在 Laravel 5.7 中使用 Memcached 进行会话?
- c# - ASP.NET 后台线程阻止页面访问
- android - 我的 onClickListener 在 getView 方法中工作。为什么?
- android - ffmpeg 创建的延时摄影不会在 VLC 以外的其他播放器上播放
- python - 在单词的复数或单数之间选择问题
- r - dplyr中select()的contains()和matches()之间的区别
- django - Django任何已安装的应用程序都找不到静态文件