如何在google-apps-script的两个(或更多)电子表格(每张约50张)中划分谷歌电子表格(约100张)?
唉,由于google bug(请参阅https://productforums.google.com/d/topic/docs/H2ZakBguOgk/discussion),我无法复制整个电子表格文件并删除每个电子表格中的一些工作表。
我只能在另一个电子表格中逐张复制工作表,如果复制成功,则删除原始工作表。
提前致谢;)
答案 0 :(得分:1)
这是一个应该做你想做的代码片段,我没有测试它,所以也许你必须调整一些细节,但总的想法就在那里......
编辑:我测试并进行了更正以使其正常工作... 抱歉第一版中的拼写错误
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);
}
}