Google apps script 将电子表格分成两个或多个电子表格?

Google apps script 将电子表格分成两个或多个电子表格?,google-apps-script,spreadsheet,Google Apps Script,Spreadsheet,如何在GoogleApps脚本中将一个google电子表格(大约100张)分成两个(或更多)电子表格(每个大约50张) 唉,由于谷歌的错误(请参阅),我无法复制整个电子表格文件并删除每个电子表格中的一些表格 我只能在另一个电子表格上逐个复制工作表,如果复制成功,则删除原始工作表 提前感谢;) 这里有一个代码片段,它应该可以做你想做的事情,我没有测试它,所以你可能需要调整一些细节,但总的想法是 编辑:我进行了测试并进行了更正以使其正常工作。。。很抱歉在第一个版本中出现了错误 这里是一个代码片段,应

如何在GoogleApps脚本中将一个google电子表格(大约100张)分成两个(或更多)电子表格(每个大约50张)

唉,由于谷歌的错误(请参阅),我无法复制整个电子表格文件并删除每个电子表格中的一些表格

我只能在另一个电子表格上逐个复制工作表,如果复制成功,则删除原始工作表


提前感谢;)

这里有一个代码片段,它应该可以做你想做的事情,我没有测试它,所以你可能需要调整一些细节,但总的想法是

编辑:我进行了测试并进行了更正以使其正常工作。。。很抱歉在第一个版本中出现了错误


这里是一个代码片段,应该做你想要的,我没有测试它,所以也许你将不得不调整一些细节,但总的想法是那里

编辑:我进行了测试并进行了更正以使其正常工作。。。很抱歉在第一个版本中出现了错误


菜单选项“文件>制作副本…”是否也不起作用?(在你粘贴的链接上)似乎只有下载对你不起作用。是的,两种方法都不起作用:“文件>制作副本…”和“文件>下载为/Excel”。如果我尝试从drive.google.com/More/Download/selected item/excel中选择文件,也会发生同样的事情。提前感谢;)菜单选项“文件>制作副本…”是否也不起作用?(在你粘贴的链接上)似乎只有下载对你不起作用。是的,两种方法都不起作用:“文件>制作副本…”和“文件>下载为/Excel”。如果我尝试从drive.google.com/More/Download/selected item/excel中选择文件,也会发生同样的事情。提前感谢;)哇!非常感谢我刚刚在另一个没有问题的电子表格上尝试了你的建议,然后在有问题的电子表格上进行了测试。唉,我一直得到“”很抱歉,发生了服务器错误。请稍等,然后重试。(第3行)“.只是一个细节:我希望我是对的,因为我已经修改了你的第二行:var oldfileID=(“0Ajz_..3NjJ1R0JiOUE”)/“你的原始ss ID”?提前感谢;)嗨,代码中有一些错误…现在你有了一个工作版本。(我在第二个循环中使用ss而不是ssold,而且在第一个循环中我忘记了-1Hi Serge,非常感谢。)唉,现在我一直在犯同样的错误。如果你不介意的话,我明天会再试一次。我会让你知道的。再次感谢。PS:我也在上面回答了Henrique。正如你所愿……我在这里测试了一个有20张表的电子表格,没有错误……祝你明天好运:-)你好,Serge,我在第3行仍然有相同的错误。但是由于你的脚本,我能够在测试电子表格上执行以下操作(没有“下载为excel”错误)。函数copySS2(){var oldFileID=(“0Ajz…TlE”)/“你的原始ss ID”var newFile=DocsList.getFileById(oldFileID).makeCopy()}将完整复制我的文件(除非我的部分有错误,否则所有的文本和图像都在那里)。;)现在我刚刚用做了测试,以测试我的电子表格(有“下载为excel”错误)。创建新文件后大约5分钟。;)哇!非常感谢!;)我刚刚在另一个没有问题的电子表格上尝试了您的建议,然后对有问题的电子表格进行了测试。唉,我一直得到“很抱歉,发生了服务器错误。请稍等,然后重试。(第3行)”。只是一个细节:我希望我是对的,因为我已经修改了你的第二行代码:var oldfileID=(“0Ajz_...3NjJ1R0JiOUE”)/“你的原始ss ID”?提前感谢;)嗨,代码中有一些错误。。。现在您有了一个工作版本。(我在第二个循环中使用了ss而不是ssold,而且在第一个循环中我忘记了-1Hi Serge,非常感谢。)唉,现在我不断地得到同样的错误。如果你不介意的话,我明天再试一次。我会让你知道的。再次感谢。附言:我也在上面回答了亨里克。随你喜欢。。。我在一个有20张表格的电子表格上进行了测试,没有发现任何错误。。。祝明天好运:-)嗨,塞奇,我的第三行仍然有同样的错误。但多亏了你的脚本,我才能够在测试电子表格上完成以下操作(没有“下载为excel”错误)。函数copySS2(){var oldFileID=(“0Ajz…TlE”)/“您的原始ss ID”var newFile=DocsList.getFileById(oldFileID).makeCopy()}将完整复制我的文件(除非我的部分出现错误,否则所有文本和图像都存在)。;)现在我刚刚用做了测试,以测试我的电子表格(有“下载为excel”错误)。创建新文件后大约5分钟。;)
function splitSS() {
var oldFileID = 'original ss Id'
var newFile = DocsList.getFileById(oldFileID).makeCopy()
var newFileID = newFile.getId()
var ss = SpreadsheetApp.openById(newFileID);
Logger.log(ss.getNumSheets())
var todel = parseInt((ss.getNumSheets())/2);
Logger.log(todel)
var tokeep = ss.getNumSheets()-todel
Logger.log(tokeep)
    for (pa=ss.getNumSheets()-1;pa>tokeep;--pa){ 
      ss.setActiveSheet(ss.getSheets()[pa]);
      var delsheet = ss.deleteActiveSheet(); // delete sheets begining with the last one
      Utilities.sleep(400);
    }
var ssold = SpreadsheetApp.openById(oldFileID);
    for (pa=todel;pa>1;--pa){ 
      ssold.setActiveSheet(ssold.getSheets()[pa]);
      var delsheet = ssold.deleteActiveSheet(); // delete sheets begining with the last one
      Utilities.sleep(400);
    }
}