我想找出电子表格中最后一次更改的是哪个选项卡。在
我有一个谷歌工作表,多个用户共享多个标签。我可以检测到用户何时进行这样的更改:
def testChanges(self):
response = self.service.revisions().list(fileId='some-file-id').execute()
revs = response.get('revisions',[])
if not len(revs):
return
revID = revs[-1].get('id')
response = self.service.revisions().get(
fileId='some-file-id',
revisionId=revID,
fields='kind, id, modifiedTime, lastModifyingUser'
).execute()
我得到的答复是:
^{pr2}$现在我需要处理用户刚刚更改的选项卡。我怎么知道呢?我已经检查了Drive documentation和{a2},但到目前为止没有运气。在
我不相信restapi支持或不可能实现这一点。您可能需要创建一个installed edit触发器,并使用它来记录edit event object(例如,将其发布到URL,将其附加到一些“sentinel”电子表格中,等等)。您可以将其与当前的
revisions
方法结合起来,以知道谁执行了修改(因为除非您在同一个GSuite域中,否则用户标识通常是受限信息)。在将数据写入指定电子表格的示例。在
你可以在一个独立的应用程序脚本项目中创建这个函数,programmatically install这个函数作为你需要观察的各种电子表格的编辑触发器。在
您可以创建一个for循环来扫描所有选项卡(每隔几秒钟),并将所有选项卡的修改时间存储在一个表中。对循环进行编程,将每个选项卡的当前修改时间与上次扫描时的值进行比较。当出现不匹配时,这意味着当前选项卡被修改。在
只是个主意。在
相关问题 更多 >
编程相关推荐