在 Apps 脚本中通过 url 获取云端硬盘文件夹

Get a Drive folder by url in Apps Script

我正在尝试自动化流程。基本上有人为特定客户(学校)征求文件。我需要在现有文件夹中为该学校创建的文件副本。问题是,当我们填写征集表格时,我们要求提供驱动器文件夹 url,但我似乎无法从该 url 获取 ID,也无法从 [=17] 访问该文件夹=] 或者:

    function intialEv() {
  var ss = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('Form Responses 1');
  var lastRow = ss.getLastRow();
  var data = ss.getRange(lastRow,1,lastRow,11).getValues();
  var folderUrl = data[0][7];
  var date = new Date().getMonth();
  var lang = data[0][8];
  var contact = data[0][10];
  var schoolName = data[0][3];
  var coord = data[0][5];

  // Make a copy of a decoy sheet, setting same name with school and date, copy being created in the destination folder signaled.
  var newSheet = DriveApp.getFileById('1K_QuWNa4OPjlC0S3R76XBILQkqd6kh54hRcXVqruVto').makeCopy("Evaluación Previa_" + schoolName + "_" + date, folderUrl);

当我记录 folderUrl 时,它 returns 整个 url。有没有办法提取ID?或者更快,通过 url?

获取相关文件夹

你的文件夹 URL 是这样的吗?

https://drive.google.com/drive/folders/0BzBleEfbQeCuUWs3UFwySTJ7LTf

如果他们这样做,试试这个:

const folder = DriveApp.getFolderById(folderUrl.replace(/^.+\//, ''));

相关问题:

参考: