繁体   English   中英

如何制作电子表格复印机的循环(将整个电子表格复制到具有新名称的新电子表格中)

[英]How to make a loop of an Spreadsheet copier (Copies an entire Spreadsheet into a new one with a new name)

我有一个脚本可以将整个电子表格复制到一个带有选定名称的新电子表格,但我想制作一个循环,这样我就可以设置我需要制作的所有新电子表格的列表(10 aprox。)

我已经尝试从复制的工作表中删除ID表但它没有用...所以我希望脚本使用Col A上的名称并将新的副本ID放在Col B上

function setupSheet() {
var s = SpreadsheetApp.getActive().getSheetByName('ID');
var sheet_name = s.getRange("A1").getValue(); // Get the value of cell A1, used to name the new spreadsheet.
var ID = DriveApp.getFileById("XXXXXXXX").makeCopy(sheet_name, DriveApp.getFolderById("XXXXXXXX")).getId(); //Copies the specific Spreadsheet into an specific folder.
  Logger.log(ID); //Saves the ID of the new Spreadsheet into the Log.
var stringToWrite = Logger.getLog();
SpreadsheetApp.getActive().getActiveSheet().getRange("B1").setValue(stringToWrite); //Writes the ID of the sheet from the Log.
//ID.deleteSheet(ID.getSheetByName('ID')); // remove "ID" sheet which was created by default in new spreadsheet.

}

我们可以在Google Apps脚本中使用JavaScript循环,例如fordo..while等。我们也可以使用Array.protoype.forEach

要使用A列中的名称,请使用getValues()来获取值。
要在B列上设置副本的名称,请使用setValues()

注意:上述两种方法都是Class Range的方法。

有关详细信息,请参阅https://developers.google.com/apps-script/guides/sheets

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM