首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Gsuite迁移导致更改每个文档的URL,编写脚本以更新每个文档中的每个url (1million+)

Gsuite迁移导致更改每个文档的URL,编写脚本以更新每个文档中的每个url (1million+)
EN

Stack Overflow用户
提问于 2021-03-03 03:29:20
回答 1查看 34关注 0票数 1

我的组织正在升级我们的Gsuite,导致每个docID都被更改。在整个million+文档中,有许多链接到其他文档,有时是为了方便用户,有时是为了让脚本将它们链接起来。我们想用一个脚本来更新所有的urls。

我们将收到一个电子表格,其中列A: List of old IDs,列B: List of new ids,列C: Owner。目前我们的解决方案是打开每个文档,在列表中搜索每个旧ID,并替换为相应的新ID。它是有效的,但是运行时间是5年。谁有更好的解决方案?

这是我们的电子表格代码,与文档和幻灯片的代码类似

代码语言:javascript
复制
var oldurls = mSheet.getRange("A2:A"+filesize).getValues();
var newurls = mSheet.getRange("B2:B"+filesize).getValues();

for(var row in newurls) {
gSheet=SpreadsheetApp.openById(newurls[row]); 

for(var i = 0; i < oldurls.length; i++)   
  {
 gSheet.createTextFinder(oldurls[i]).matchEntireCell(false).matchFormulaText(true).replaceAllWith(newurls[i]);
   }
}
EN

回答 1

Stack Overflow用户

发布于 2021-03-03 23:01:47

您应该使用Sheets API来更新电子表格中的值。

要开始使用,我建议您使用Sheets API Quickstart here,然后根据您的需要对其进行调整。

在使用Sheets API时,考虑到当前有关配额的限制也很重要。根据Sheets API文档here

此版本的Google Sheets API的限制为每个项目每100秒500个请求,每个用户每100秒100个请求。读取和写入的限制是单独跟踪的。没有每日使用限制。

您也可以使用Sheets高级服务在应用程序脚本中完成此操作,但是,这最终也会落入应用程序脚本的quota中。

参考文献

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66445890

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档