我尝试使用过滤器列出 G-Drive 中的文件。过滤器变量存储在 G-Sheet 中。
代码来了。这没用。但是当我放置文本字符串而不是变量时它确实如此。
非常感谢,
function Lister_fichiers() {
// Log the name of every file in the user's Drive that modified after date = 'Var!'A1,
// whose name contains "MARQUE = 'Var!'B1".
var app = SpreadsheetApp;
var classeur = app.getActiveSpreadsheet();
const Formsheet = classeur.getSheetByName('Var');
const CsvM = classeur.getSheetByName('CsvM');
var Date1 = Formsheet.getRange('A1').getValue();
var Date2 = new Date(Date.UTC(Date1));
var Marque = Formsheet.getRange('B1').getValue();
var Pays = Formsheet.getRange('C1').getValue();
// this line here does not work and causes an error
var sffiles = DriveApp.searchFiles("modifiedDate > '"+Date2+"' and title contains '"+Marque+"' ");
}
此外,它没有错误,但没有日期过滤器仍然无法工作。
在工作表中,A1 = "2019-01-01" 和 B1 = "Marque1"
// 下面的行工作正常
// var sffiles = DriveApp.searchFiles('modifiedDate > "2019-01-01" and title contains "Marque1" and mimeType = "application/vnd.google-apps.spreadsheet" and trashed=false');
while (sffiles.hasNext()){
var sffile = sffiles.next();
var sfname = sffile.getName();
var sfdate = sffile.getLastUpdated();
var sfsize = sffile.getSize();
var sfurl = sffile.getUrl();
var fileParents = sffile.getParents();
while (fileParents.hasNext()) {
var sffolder = fileParents.next();
Logger.log(sffolder.getName());
}
var sfid = sffile.getId();
Logger.log(sffile.getId());
Logger.log(sffile.getName());
var sflist = [sfname,sfdate,sfsize,sfurl,sfid,sffolder];
CsvM.appendRow(sflist);
}
CsvM.appendRow(["A-Name", "Date", "Size", "URL", "ID", "Dossier Parent"]);
CsvM.sort(1);
}