Ниже приведен скрипт приложений, который я использую для сопоставления данных из различных электронных таблиц, доступных в определенной папке на диске.
function countValue() {
var folder = DriveApp.getFoldersByName("foldername").next();
var contents = folder.getFilesByType("application/vnd.google-apps.spreadsheet");
var file;
var filename;
var sheet = SpreadsheetApp.getActiveSheet();
var newname;
var status;
sheet.clear();
sheet.appendRow(["Folder Name", "File Name", "Sheet Name", "Status"]);
newname = folder.getName();
while(contents.hasNext()) {
file = contents.next();
filename = file.getName();
var ss=SpreadsheetApp.openById(file.getId());
var shts=ss.getSheets();
for(var i=0;i<shts.length;i++){
var sheetname = shts[i].getName();
status = {1:shts[i].getRange('A1').getValue(),2:shts[i].getRange('A2').getValue(),3:shts[i].getRange('A3').getValue(),4:shts[i].getRange('A4').getValue()};
data = [newname, filename, sheetname, status]
sheet.appendRow(data);
}}
};
Я пытаюсь использовать тот же сценарий приложений для других папок диска. Невозможно каждый раз менять имя папки в скрипте приложения, потому что у меня много папок на диске. Есть ли какой-нибудь возможный способ запустить скрипт приложения на основе активной папки?