Google apps script GAS脚本是否可以锁定Google工作表,以便在脚本完成之前没有其他人可以修改它
我很熟悉,但这只适用于锁定脚本 我有一些代码可以“处理”一个大的谷歌表单。我的脚本需要对行重新排序。我需要/希望在脚本运行时,其他人无法更改顺序。但是,我仍然需要另一个脚本来追加行 我们使用谷歌表格作为我们团队的招生信息。它将行附加到图纸。我有一份每小时的工作,它将遍历所有行/记录并“处理它们”。我有一个列,用于存储上次“处理”记录/行的时间。我想对该列进行排序,使“最早的”记录位于顶部,然后从上到下开始处理。如果脚本失败或超时,那么下一次迭代将重新开始 我知道我可以使用Google apps script GAS脚本是否可以锁定Google工作表,以便在脚本完成之前没有其他人可以修改它,google-apps-script,google-sheets,Google Apps Script,Google Sheets,我很熟悉,但这只适用于锁定脚本 我有一些代码可以“处理”一个大的谷歌表单。我的脚本需要对行重新排序。我需要/希望在脚本运行时,其他人无法更改顺序。但是,我仍然需要另一个脚本来追加行 我们使用谷歌表格作为我们团队的招生信息。它将行附加到图纸。我有一份每小时的工作,它将遍历所有行/记录并“处理它们”。我有一个列,用于存储上次“处理”记录/行的时间。我想对该列进行排序,使“最早的”记录位于顶部,然后从上到下开始处理。如果脚本失败或超时,那么下一次迭代将重新开始 我知道我可以使用getValues或ge
getValues
或getDisplayValues
获取一个数组,然后写回数组,但我担心如果有人对行进行排序,会发生什么情况,因为写回数组时会把事情弄糟
有什么方法可以实现我的目标吗?我希望能够处理记录,并保持行顺序以避免中断处理。完全阻止电子表格的方法是更改电子表格共享设置。删除所有编辑器或将其更改为查看器,脚本完成后,将其更改为编辑器。在极端情况下,usa将提供第二个帐户作为关键文件/电子表格的所有者,并仅用于此目的,因此您可以阻止您的常规帐户更改电子表格 注意:可以使用Google表单
editResponseUrl
编辑链接的电子表格
我面临着类似的情况,但我采取了不同的方法,我使用索引/键列(可以使用时间戳列)并使用索引/键将每个编辑的行保存到正确的位置,然后在单个操作中写入整个结果数组(使用setValues()
)。在我的例子中,这很简单,因为我只需要值,我不担心注释、数据验证、条件格式、注释等,并且没有一个Google表单链接到我的电子表格
相关的