在 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(/^.+\//, ''));
相关问题:
参考:
我正在尝试自动化流程。基本上有人为特定客户(学校)征求文件。我需要在现有文件夹中为该学校创建的文件副本。问题是,当我们填写征集表格时,我们要求提供驱动器文件夹 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(/^.+\//, ''));