Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/google-apps-script/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Google apps script 在单个撤消/重做命令中加入多个编辑_Google Apps Script - Fatal编程技术网

Google apps script 在单个撤消/重做命令中加入多个编辑

Google apps script 在单个撤消/重做命令中加入多个编辑,google-apps-script,Google Apps Script,我的脚本在Ranges上执行多个moveTo操作。除了脚本完成每个特定的moveTo操作后是一个可撤消的操作外,一切正常。所以,如果用户认为这不是他所需要的,他必须一步一步地撤销未知的次数。(在连接缓慢/无响应的情况下,由于缺少对“撤消”列表上的命令的描述,这甚至可能很困难。) 执行单个getValues/setValues可以解决此问题。但只有当所有数据都在一张纸上时(否则,您必须执行多个getValues/setValues,这会使我们返回到相同的问题)。此外,它似乎有点昂贵(特别是对于大型

我的脚本在
Range
s上执行多个
moveTo
操作。除了脚本完成每个特定的
moveTo
操作后是一个可撤消的操作外,一切正常。所以,如果用户认为这不是他所需要的,他必须一步一步地撤销未知的次数。(在连接缓慢/无响应的情况下,由于缺少对“撤消”列表上的命令的描述,这甚至可能很困难。)

执行单个
getValues
/
setValues
可以解决此问题。但只有当所有数据都在一张纸上时(否则,您必须执行多个
getValues
/
setValues
,这会使我们返回到相同的问题)。此外,它似乎有点昂贵(特别是对于大型图纸),并且在格式和公式方面存在问题


那么还有其他解决方案吗?

不是代码中的解决方案,但是您的用户可以按时间“分组”更改。您的脚本将在短时间内完成所有这些更改。您只需转到这些更改的顶部并单击revert,这将还原脚本所做的所有更改

我不确定用户如何才能识别更改


在使用Google文档还原过程时,您不能选择接受哪些更改和拒绝哪些更改。

什么是“转到这些更改的顶部”?在何处以及如何执行?在电子表格中,使用文件|参见修订历史记录。查看历史记录以查找适用的更改。通过查看时间戳(和用户)转到“顶部”,查看多个moveTo更改何时发生。还原到第一次moveTo()之前的版本。注意:您的moveTo更改可以与其他更改合并,在这种情况下,请使用“显示更详细的修订”按钮。恐怕这不是很方便用户使用。但总比没有好。我不反对,但你没有其他选择。每次使用应用程序脚本API调用moveTo/setValue都将在修订历史记录中进行更改。