Я довольно новичок в Apps Script и сумел разработать сценарий и назначил его кнопке на моей электронной таблице. При щелчке он сохраняет копию активной электронной таблицы в папке на G-Drive. Это работает нормально,однако я хотел бы выполнить более сложную функциональность.
Ячейка в электронной таблице содержит текущую дату, поэтому при нажатии кнопки я хотел бы, чтобы код проверял дату и создавал новуюпапку, если это новый месяц, и сохраните копию таблицы во вновь созданной папке.Например: если дата 1 марта 2019 года, сценарий должен иметь возможность создать папку с именем Mar и сохранить копию таблицы в этой папке.
Я использовал приведенный ниже код, который нашел здесь, но он ничего не делает.
function makeFolder() {
var formattedDate = Utilities.formatDate(new Date(), "GMT", "yyyy-MM-dd");
var folderYearDate = Utilities.formatDate(new Date(), "GMT", "yyyy");
var folderMonthDate = Utilities.formatDate(new Date(), "GMT", "MMMM");
var name = formattedDate;
var parent = DriveApp.getFolderById("xxxxxxxxxxx").getFoldersByName("SMS")
var yearExist = parent.next();
var yearFolders = yearExist.getFoldersByName(folderYearDate);
if(yearFolders.hasNext()){
var yearFolder = yearFolders.next();
} else {
var yearFolder = yearExist.createFolder(folderYearDate)
return;
}
var monthFolders = yearFolder.getFoldersByName(folderMonthDate);
if(monthFolders.hasNext()){
var monthFolder = monthFolders.next()
Logger.log('Yes, There is a month folder.')
} else {
var monthFolder = yearFolder.createFolder(folderMonthDate);
}
}