仅包含内容的电子表格副本
如何仅使用内容制作Google表的副本。 我的问题是,有一个函数已经允许您在带有({contentonly:true})的表格范围内执行此操作。但是,如果有潜在的话,它行不通。 有没有办法只能制作一个值表的副本(即使有概念)? 可能是这样的:
var spreadsheet = SpreadsheetApp.getActiveSpreadsheet();
var destFolder = DriveApp.getFoldersByName("Experiments").next();
var file = DriveApp.getFileById(spreadsheet.getId()).makeCopy("Saved Copy", destFolder);
var newSpreadsheet = SpreadsheetApp.open(file);
for(var i = 0; i < spreadsheet.getNumSheets(); i++){
newSpreadsheet.getSheets()[i].getDataRange().setValues(spreadsheet.getSheets()[i].getDataRange().getValues());
}
但是,如果有很多细胞,那不是很高效。
How to make a copy of a google sheet with content only.
My problem is that there is a function that already allows you to do this on the ranges of a sheet with ({contentonly: true}). But it doesn't work if there is an importrange.
Is there a way to make a copy of a sheet of values only (even if there is an importange)?
May be something like this :
var spreadsheet = SpreadsheetApp.getActiveSpreadsheet();
var destFolder = DriveApp.getFoldersByName("Experiments").next();
var file = DriveApp.getFileById(spreadsheet.getId()).makeCopy("Saved Copy", destFolder);
var newSpreadsheet = SpreadsheetApp.open(file);
for(var i = 0; i < spreadsheet.getNumSheets(); i++){
newSpreadsheet.getSheets()[i].getDataRange().setValues(spreadsheet.getSheets()[i].getDataRange().getValues());
}
But it is not very efficient, if there are many cells.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
性能问题也许是通过调用太多的电子表格服务方法引起的(即
drevesheet.getSheets()
在循环中两次称为)。尝试以下内容:Maybe the performance problem is caused by calling too many Spreadsheet Service methods (i.e.
Spreadsheet.getSheets()
is called two times inside a loop). Try the following: