Сейчас ваша корзина пуста!
Loovülesanne: Skript loob uusi kaustu ja tekstifaile Google Drive’is.
Teostamise sammud:
Scripti redaktori avamine:
Minge Google Apps Script ja looge uus projekt või avage see otse Google Drive’is menüüst “Laiendused” -> “Apps Script”.
Scripti kirjutamine
Kleepige järgmine kood redaktorisse:
function createFolderAndFile() {
// Loome kausta nimega, mis vastab tänase kuupäevaga
var today = new Date();
var folderName = Utilities.formatDate(today, Session.getScriptTimeZone(), 'yyyy-MM-dd');
var folder = DriveApp.createFolder(folderName);
Logger.log('Loodi kaust: ' + folderName);
// Loome tekstifaili selles kaustas
var fileName = folderName + '_report.txt';
var fileContent = 'See on aruanne kuupäevaga ' + folderName + '.\nLoomise kuupäev: ' + today.toLocaleString();
var file = folder.createFile(fileName, fileContent);
Logger.log('Loodi fail: ' + fileName);
}

Mida teeb see kood?
- Esiteks loob skript kausta, mille nimi vastab tänasele kuupäevale (näiteks “2025-03-20”).
- Seejärel loob skript selles kaustas tekstifaili nimega “2025-03-20_report.txt”, mis sisaldab tekstiaruannet koos tänase kuupäevaga.
Scripti käivitamine:
Skripti käivitamiseks vajutage redaktoris nuppu “Käivita”. Pärast seda täidab skript kausta ja faili loomise teie Google Drive’is.
Tulemuse vaatamine:
- Minge oma Google Drive’i ja leidke kaust, mille nimi vastab tänasele kuupäevale.
- Avage see kaust ja leiate tekstifaili aruandega.



Täiendavad võimalused:
Mitme kausta loomine
Kui on vaja luua kaustu erinevate eesmärkide või erinevate kasutajate jaoks, saab funktsionaalsust laiendada, lisades mitme kausta loomise unikaalsete nimedega.
function createMultipleFolders() {
var folderNames = ['Projekt A', 'Projekt B', 'Projekt C'];
for (var i = 0; i < folderNames.length; i++) {
DriveApp.createFolder(folderNames[i]);
Logger.log('Looodi kaust: ' + folderNames[i]);
}
}


Andmete salvestamine CSV-faili
Samuti saab luua CSV-faili (comma-separated values file) ja salvestada andmeid sellesse. See võib olla kasulik aruandluse või andmete logimise jaoks.
CSV (Comma-Separated Values) fail on tekstifail, kus andmed on eraldatud komadega. Iga rida failis esindab üht andmeread (näiteks tabeli ühe rida) ja iga väärtus on eraldatud komaga. CSV formaati kasutatakse sageli andmete salvestamiseks ja vahetamiseks, kuna seda saab lugeda ja töödelda paljude erinevate programmidega, nagu näiteks Microsoft Excel või Google Sheets.
Eesti keeles võiks öelda, et CSV fail on “komaga eraldatud väärtuste fail”, mis on lihtne viis andmete salvestamiseks tekstina.
function createCSVFile() {
var data = [
['Kuupäev', 'Kulud', 'Tulu'],
['2025-03-20', 500, 1500],
['2025-03-21', 300, 2000]
];
var csvContent = '';
data.forEach(function(row) {
csvContent += row.join(',') + '\n';
});
var folder = DriveApp.createFolder('Aruanded');
var file = folder.createFile('finantsaruanne.csv', csvContent);
Logger.log('CSV fail loodi: ' + file.getName());
}


Käivitamise ajastamine (automaatse loomise jaoks)
Kui soovite, et kaustad või failid loodi automaatselt vastavalt ajakavale, seadistage käivitamise ajastamine:
- Google Apps Scripti redaktoris minge “Käivitajad” (kellakujuline ikoon).
- Klõpsake nuppu “Lisa käivitaja” ja valige sobiv funktsioon, näiteks createFolderAndFile.
- Seadistage käivitaja nii, et see täidetaks näiteks iga päev või iga nädal.

Tulemus:
Selle skripti abil saate automaatselt luua kaustu ja faile Google Drive’is, mis on kasulik erinevates automaatsetes protsessides, nagu aruandlus, failide korraldamine või andmetöötlus.
See näide näitab, kuidas Google Apps Scriptiga saab integreerida Google Drive’i teiste teenustega ja automatiseerida igapäevaseid ülesandeid!
Minu täiustused skriptidele:
function createFolderAndFile() {
// Запросить у пользователя имя папки (folder name)
var folderName = Browser.inputBox('Enter folder name:', Browser.Buttons.OK_CANCEL);
if (folderName == 'cancel') return; // Если пользователь отменил, остановить выполнение функции
// Запросить у пользователя имя файла (file name) и расширение
var fileName = Browser.inputBox('Enter the file name (with extension, e.g., report.txt):', Browser.Buttons.OK_CANCEL);
if (fileName == 'cancel') return; // Если пользователь отменил, остановить выполнение функции
// Запросить у пользователя содержимое файла (file content)
var fileContent = Browser.inputBox('Enter the content of the file:', Browser.Buttons.OK_CANCEL);
if (fileContent == 'cancel') return; // Если пользователь отменил, остановить выполнение функции
// Создать папку на Google Drive с указанным именем (create folder)
var folder = DriveApp.createFolder(folderName);
Logger.log('Created folder: ' + folderName); // Логирование создания папки
// Создать текстовый файл внутри папки с указанным именем и содержимым
var file = folder.createFile(fileName, fileContent);
Logger.log('Created file: ' + fileName); // Логирование создания файла
}
Kood teeb järgmist:
- Kasutaja sisendi küsimine:
- Kood küsib kasutajalt kolme erinevat sisendit:
- Kausta nimi: Kasutaja peab sisestama nime, mille alusel kaust luuakse.
- Faili nimi: Kasutaja sisestab faili nime koos laiendiga (nt
report.txt
). - Faili sisu: Kasutaja sisestab, mis sisu failis peaks olema.
- Kood küsib kasutajalt kolme erinevat sisendit:
- Kausta loomine:
- Pärast seda, kui kasutaja on kausta nime sisestanud, loob skript kausta Google Drive’i kasutades
DriveApp.createFolder()
meetodit.
- Pärast seda, kui kasutaja on kausta nime sisestanud, loob skript kausta Google Drive’i kasutades
- Faili loomine:
- Fail luuakse valitud kausta sees, kasutades
folder.createFile()
meetodit, kus fail saab sisuks kasutaja määratud sisu.
- Fail luuakse valitud kausta sees, kasutades
- Logimine:
- Kood kasutab
Logger.log()
meetodit, et logida loodud kaustade ja failide nimed, et need oleksid nähtavad arendaja logis.
- Kood kasutab



Tulemus:


function createMultipleFolders() {
// Запрашиваем у пользователя, сколько папок он хочет создать
var numFolders = Browser.inputBox('Сколько папок вы хотите создать?', Browser.Buttons.OK_CANCEL);
if (numFolders == 'cancel' || isNaN(numFolders) || numFolders <= 0) {
Logger.log('Отменено или введено неправильное значение.');
return; // Если пользователь отменил или ввел неверное количество, завершаем выполнение функции
}
numFolders = parseInt(numFolders); // Преобразуем ввод в целое число
// Цикл для создания папок, запрашиваем имя каждой папки
for (var i = 0; i < numFolders; i++) {
var folderName = Browser.inputBox('Введите имя папки (' + (i + 1) + '):', Browser.Buttons.OK_CANCEL);
if (folderName == 'cancel') {
Logger.log('Создание папки отменено.');
return; // Если пользователь отменил, завершаем выполнение функции
}
// Создаем папку в Google Drive с указанным именем
var folder = DriveApp.createFolder(folderName);
Logger.log('Создана папка: ' + folderName); // Логируем создание папки
}
}
Küsimine, kui palju kaustu luua:
- Esmalt küsitakse kasutajalt, mitu kausta nad soovivad luua. Kasutaja sisestab arvu ja seejärel jätkab skript edasi.
Küsimine iga kausta nime kohta:
- Järgmises tsüklis küsib skript kasutajalt iga kausta nime, kasutades
Browser.inputBox()
. Kui kasutaja tühistab (klõpsab “Cancel”), siis funktsioon lõpetab töö.
Kaustade loomine:
- Iga sisestatud nime põhjal loob skript kausta Google Drive’is, kasutades
DriveApp.createFolder()
meetodit. Iga loodud kaust logitakse.



Tulemus:

function createCSVFile() {
// Запрашиваем у пользователя название папки
var folderName = Browser.inputBox('Введите название папки:', Browser.Buttons.OK_CANCEL);
if (folderName == 'cancel' || folderName == '') {
Logger.log('Отменено или пустое имя папки.');
return; // Если пользователь отменил или ввел пустое название, прекращаем выполнение
}
// Запрашиваем у пользователя имя CSV файла
var fileName = Browser.inputBox('Введите имя CSV файла (с расширением, например, report.csv):', Browser.Buttons.OK_CANCEL);
if (fileName == 'cancel' || fileName == '') {
Logger.log('Отменено или пустое имя файла.');
return; // Если пользователь отменил или ввел пустое имя, прекращаем выполнение
}
// Данные для CSV файла
var data = [
['Kuupäev', 'Kulud', 'Tulu'], // Заголовки
['2025-03-20', 500, 1500],
['2025-03-21', 300, 2000],
['2025-03-22', 100, 2500]
];
// Преобразование данных в CSV формат
var csvContent = '';
data.forEach(function(row) {
csvContent += row.join(',') + '\n';
});
// Создаем папку в Google Drive с введенным именем
var folder = DriveApp.createFolder(folderName);
Logger.log('Папка создана: ' + folderName);
// Создаем CSV файл в указанной папке
var file = folder.createFile(fileName, csvContent);
Logger.log('CSV файл создан: ' + file.getName());
}


Tulemus:



Küsimine kausta nime jaoks:
- Kasutaja sisestab kausta nime, kuhu CSV fail salvestatakse. Kui kasutaja tühistab või jätab nime tühjaks, siis funktsioon lõpetatakse.
Küsimine faili nime jaoks:
- Kasutaja sisestab CSV faili nime (sh laiendiga, näiteks
report.csv
). Kui kasutaja tühistab või ei sisesta nime, siis funktsioon lõpetatakse.
Andmete määramine CSV jaoks:
- Skript määrab CSV faili sisu, kus on tabel kuupäevade, kulude ja tuludega. Näiteks:
- 2025-03-20, 500, 1500
- 2025-03-21, 300, 2000
- 2025-03-22, 100, 2500
Andmete teisendamine CSV formaati:
- Andmed muudetakse CSV formaati, kus iga rida on eraldatud komadega ja iga rida lõpeb reavahetusega.
Kausta loomine Google Drive’is:
- Kaust luuakse Google Drive’is kasutaja määratud nimega (näiteks
Aruanded
).
CSV faili loomine kausta sees:
- CSV fail luuakse määratud kausta sees, mille nimi ja sisu põhinevad kasutaja sisendil.
Logimine:
- Skript kasutab
Logger.log()
meetodit, et logida kausta ja faili loomise kohta informatsiooni, et arendaja saaks kontrollida, et kõik toimis õigesti.