0

涉及:Google Apps 脚本 - Google Drive - 电子表格

我对编程语言完全陌生。

这就是我想要做的:

每天,使用语法 yymmdd 创建一个文件夹

在此文件夹中创建 50 个 Google Drive 中的电子表格“MyTemplate”副本。

对文件名使用以下语法:yymmdd-01 到 yymmdd-50 然后获取所有这些电子表格的名称和 ID,这些电子表格在名为 yymmdd-IDs 的电子表格中列出

这是我开始使用的一些代码,但我正在努力寻找正确的代码和语法。作为一个新手,我过得很艰难,所以任何帮助都将不胜感激:)

    function create50copies() {
      var TemplateFile = DocsList.getFileById("0bfdbdfIr_dGNsVndBTnNNeFGtlYXchhrdhrdc");
      var filesFolder = DocsList.getFolder("My Templates");
      var d = new Date();
      var curr_date = d.getDate();
      var curr_month = d.getMonth() + 1; //Months are zero based
      var curr_year = d.getFullYear(); //how do I get only the last two digits?
      // var curr_year = curry_year.substring(2,2); 

      var i;

      for (i = 1; i < 4; i++) {
       if ((i) < 10)
       {
       TemplateFile.makeCopy("Id " + curr_year + curr_month + curr_date + "-" + "0" + i).addToFolder(filesFolder);
         var ss = SpreadsheetApp.getActiveSpreadsheet();
         Logger.log(ss.getName());
            }
       else{
       TemplateFile.makeCopy("Id " + curr_year + curr_month + curr_date + "-" + i).addToFolder(filesFolder);
           }

        // TemplateFile.makeCopy("Id " + curr_year + curr_month + curr_date + "-" + i).addToFolder(filesFolder);
      }
    }

    function getids() {
     var files = DocsList.getFilesByType('spreadsheet', 0, 50);
     for (var i = 0; i < files.length; i++) {
       var spreadsheet = SpreadsheetApp.open(files[i]);
       Logger.log(spreadsheet.getName());
       Logger.log(spreadsheet.SpreadsheetApp.getActiveSpreadsheet().getId());
     }

    }
4

1 回答 1

0

您可以在创建文件时检索文件的名称及其 ID。像这样的东西

var today=...; //get the name of the file
var folder= ...; get the folder in DriveApps
var arnames=[];
for (var i=0;i<50;i++){
  var filename=today+i;     
  var copy=tenplate.makeCopy(filename, folder); 
  var stId=copy.getId();
  arnames.push([filename,stId]);
}

Logger.log(arnames);
于 2013-10-23T21:13:06.763 回答