Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/google-apps-script/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/google-sheets/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Google apps script 在特定文件夹中创建文件_Google Apps Script_Google Sheets_Google Drive Api - Fatal编程技术网

Google apps script 在特定文件夹中创建文件

Google apps script 在特定文件夹中创建文件,google-apps-script,google-sheets,google-drive-api,Google Apps Script,Google Sheets,Google Drive Api,我有一个代码,每天创建一个包含文件的工作表,但该文件将进入根文件夹,我愿意在一个特定的现有文件夹中创建该文件。下面是代码 function listFolderContents() { var date = Utilities.formatDate(new Date(), "GMT+1", "dd/MM/yyyy") var foldername = 'Absense'; var folderlisting = 'List of ' + foldername + ' ' +dat

我有一个代码,每天创建一个包含文件的工作表,但该文件将进入根文件夹,我愿意在一个特定的现有文件夹中创建该文件。下面是代码

function listFolderContents() {
  var date = Utilities.formatDate(new Date(), "GMT+1", "dd/MM/yyyy")  
  var foldername = 'Absense';
  var folderlisting = 'List of ' + foldername + ' ' +date;

  var folders = DriveApp.getFoldersByName(foldername)
  var folder = folders.next();
  var contents = folder.getFiles();

  var ss = SpreadsheetApp.create(folderlisting);
  var sheet = ss.getActiveSheet();
  sheet.appendRow( ['name', 'link'] );

  var file;
  var name;
  var link;
  var row;
  while(contents.hasNext()) {
    file = contents.next();
    name = file.getName();
    link = file.getUrl();
    sheet.appendRow( [name, link] );     
  }  
};

您可以尝试使用驱动器API。由于没有“移动”选项,您必须复制并删除新副本:

  • 生成新的电子表格并获取Id
  • 获取目标文件夹的Id
  • 将文件复制到文件夹中
  • 删除原始文件
  • 例如:

        var sheet_id = SpreadsheetApp.create("testSprsheet").getId();
    
        Drive.Files.copy({"parents":[{"id":"destination folder ID"}]}, sheet_id);
        Drive.Files.remove(sheet_id);
    
    更多信息