删除修订历史记录

时间:2012-08-28 18:40:52

标签: google-apps-script google-sheets

我正在使用Google Apps脚本对电子表格中的数据进行加密。它工作正常,但电子表格中的方便修订历史记录使得它有点没有实际意义,因为您只需在加密之前查看版本即可。

有没有办法删除修订历史记录,或者只是让它们不能一起创建?

4 个答案:

答案 0 :(得分:3)

没有。 用于访问修订历史记录的云端硬盘API特别不会删除Google表格上的条目。

需要注意的修订历史记录只能由具有编辑权限的人查看。仅查看或评论权限无法查看修订历史记录。

一种解决方案是让用户通过Google表单向非常窄的共享表单提交数据,并设置触发器,将未加密的非敏感元/聚合数据复制到更公开的表单,以供不受信任的用户访问脚本。单元格公式IMPORTRANGE()也可以从输入公式的人那里获得访问权限,因此可以将数据从受限制的电子表格移动到受限制的电子表格而不会损害原始表格。

第二个解决方案稍微麻烦一点,但更接近您的要求,是为用户和外部脚本提供对包含工作表的驱动器文件夹的访问权限。然后,使用文件夹脚本的ID可以通过drive api按名称搜索工作表,用户可以使用他们的眼睛按名称查找。加密脚本一旦完成加密,就会使用SpreadsheetApp.copy(name)复制电子表格,PHP solution for retrieving list of ciphers from server将复制所有公式,格式,数据甚至脚本,但不会复制修订历史记录。传递copy()与原始工作表相同的名称,驱动器文件名不必是唯一的。使用驱动器api将新电子表格移动到该文件夹​​,默认情况下应继承该文件夹的共享。再次使用驱动器API删除原始电子表格。由于所有用户和脚本都在特定文件夹ID中查找名为X的文件,因此一切仍然正是他们期望找到它的位置,但修订历史记录已消失。

答案 1 :(得分:0)

不幸的是,Google Apps脚本没有提供从修订历史记录中删除项目的方法。

答案 2 :(得分:-2)

复制所有电子表格,还原到第一个版本,然后粘贴de电子表格:)

答案 3 :(得分:-3)

对于Google文档,我设法通过复制文档来摆脱修订历史记录。不确定这是否也适用于电子表格。