在云端硬盘中查找特定 Google 文档
Find a specific Google Document in Drive
我正在尝试编写一个脚本来获取云端硬盘中特定但动态的 Google 文档的 URL。 Google 文档每周二创建,其日期位于 Google 文档标题的末尾。
"TypeError: Cannot find function getUrl in object FileIterator." 行 var agendaURL = file.getUrl();
上显示错误。不确定如何调试它。
var ssUrl = 'LINK BUFFERED';
var sheetName = 'SHEET1'; // name of sheet to use
var rangeName = 'C30'; // range of values to include
var dateRange = SpreadsheetApp.openByUrl(ssUrl)
.getSheetByName(sheetName)
.getRange(rangeName)
.getValues();
// NEED TO find how to find file by name below!
var file = DriveApp.getFilesByName("Weekly Agenda | " +dateRange);
var agendaURL = file.getUrl();
DriveApp.getFilesByName()得到的值是FileIterator。因此有必要从值中检索文件名,如下所示。
var filename = "Weekly Agenda | " + dateRange;
var file = DriveApp.getFilesByName(filename);
while (file.hasNext()) {
var file = files.next();
if (file.getName() == filename) {
var agendaURL = file.getUrl();
}
}
这是因为您需要遍历所有满足搜索条件的文件。解决方案在这里:https://developers.google.com/apps-script/reference/drive/drive-app
var files = DriveApp.getFilesByName("Weekly Agenda | " +dateRange);
while (files.hasNext()) {
var file = files.next();
var agendaURL = file.getUrl();
return agendaURL //for first one, or you can return each one, push to an array, etc...
}
我正在尝试编写一个脚本来获取云端硬盘中特定但动态的 Google 文档的 URL。 Google 文档每周二创建,其日期位于 Google 文档标题的末尾。
"TypeError: Cannot find function getUrl in object FileIterator." 行 var agendaURL = file.getUrl();
上显示错误。不确定如何调试它。
var ssUrl = 'LINK BUFFERED';
var sheetName = 'SHEET1'; // name of sheet to use
var rangeName = 'C30'; // range of values to include
var dateRange = SpreadsheetApp.openByUrl(ssUrl)
.getSheetByName(sheetName)
.getRange(rangeName)
.getValues();
// NEED TO find how to find file by name below!
var file = DriveApp.getFilesByName("Weekly Agenda | " +dateRange);
var agendaURL = file.getUrl();
DriveApp.getFilesByName()得到的值是FileIterator。因此有必要从值中检索文件名,如下所示。
var filename = "Weekly Agenda | " + dateRange;
var file = DriveApp.getFilesByName(filename);
while (file.hasNext()) {
var file = files.next();
if (file.getName() == filename) {
var agendaURL = file.getUrl();
}
}
这是因为您需要遍历所有满足搜索条件的文件。解决方案在这里:https://developers.google.com/apps-script/reference/drive/drive-app
var files = DriveApp.getFilesByName("Weekly Agenda | " +dateRange);
while (files.hasNext()) {
var file = files.next();
var agendaURL = file.getUrl();
return agendaURL //for first one, or you can return each one, push to an array, etc...
}