Originaalne kood
// When this script is run, a trigger for executing "checkCurrency" function is installed.
function setTrigger() {
const functionName = "checkCurrency";
const trigger = ScriptApp.getScriptTriggers().find(t => t.getHandlerFunction() == functionName);
if (trigger) {
ScriptApp.deleteTrigger(trigger);
}
ScriptApp.newTrigger(functionName).timeBased().everyMinutes(10).create();
}
function checkCurrency() {
const threshold = ###; // Please set the the threshold value you want to check.
const ticker = "CURRENCY:USDJPY"; // Please set ticker you want to check.
const email = "###"; // Please set the email address you want to notice.
const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheets()[0];
const range = sheet.getRange(sheet.getLastRow() + 1, 1, 1, 2);
range.setFormulas([["=NOW()", `=GOOGLEFINANCE("${ticker}")`]]);
range.offset(0, 0, 1, 1).setNumberFormat("yyyy/MM/dd H:mm:ss");
SpreadsheetApp.flush();
const values = range.getValues();
range.setValues(values);
if (values[0][1] > threshold) { // Or if you want to check when the current value is less than the threshold, please modify this to values[0][1] < threshold
MailApp.sendEmail({
to: email,
subject: `Report: Value is over the threshold (${threshold})`,
htmlBody: `<p>Current value is ${values[0][1].toFixed(2)}.</p><p><a href="${ss.getUrl()}">Open Spreadsheet</a>`,
});
}
}
- setTrigger funktsioon eritelu
function setTrigger() { // määrame funktsiooni nime, mille jaoks loome trigeri:
const functionName = "checkCurrency";
const trigger = ScriptApp.getScriptTriggers().find(t => t.getHandlerFunction() == functionName); // kontrollime, kas triger juba eksisteerib:
if (trigger) {
ScriptApp.deleteTrigger(trigger); // kui triger on juba olemas, kustutame selle:
}
ScriptApp.newTrigger(functionName).timeBased().everyMinutes(10).create(); // loome uue trigeri, mis käivitab checkCurrency iga 10 minuti järel:
}
2. checkCurrency funktsioon eritelu
function checkCurrency() {
const threshold = ###; // väärtus, ületamise juhul saadetab e-kiri mailile
const ticker = "CURRENCY:USDJPY"; // vahetuskurss, mida soovite kontrollida
const email = "###"; // mail, kuhu saadetakse teavitus ületamise kohta
const ss = SpreadsheetApp.getActiveSpreadsheet(); // saab aktiivse arvutustabeli
const sheet = ss.getSheets()[0]; // hangib esimese lehe praegusest arvutustabelist
const range = sheet.getRange(sheet.getLastRow() + 1, 1, 1, 2); // valib veergude A ja B esimese vaba rea uute andmete kirjutamiseks
range.setFormulas([["=NOW()", `=GOOGLEFINANCE("${ticker}")`]]); // sisestab lahtritesse praeguse kuupäeva/kellaaja ja valuutakursi google finance'ist
range.offset(0, 0, 1, 1).setNumberFormat("yyyy/MM/dd H:mm:ss"); // määrab kuupäeva ja kellaaja formaadi esimesele lahtrile (veerg A)
SpreadsheetApp.flush(); // sunnib kõik muudatused tabelis kohe rakenduma
const values = range.getValues(); // hangib just värskendatud vahemikust väärtused
range.setValues(values); // kirjutab saadud andmed uuesti üle, et salvestada ainult numbrilised väärtused (vältides valemeid)
if (values[0][1] > threshold) { // kontrollib, kas saadud väärtus ületab või vähem kui määratud piiri (threshold)
MailApp.sendEmail({ // kui väärtus ületab või vähem kui piiri, saadab e-kirja teavituse
to: email, // e-kirja saaja aadress
subject: `Report: Value is over the threshold (${threshold})`, // e-kirja teema
htmlBody: `<p>Current value is ${values[0][1].toFixed(2)}.</p><p><a href="${ss.getUrl()}">Open Spreadsheet</a>`, // e-kirja sisu koos praeguse väärtusega ja lingiga google tabelile
On loodnud google tabel, kuhu iga 10 minutit on sisestatud valitud vahetuskurss ja kellaaeg.

Teen väike muudatused originaalne koodile, et saada email.
function checkCurrency()
const threshold = 140; // saadan e-mail, kui valitud vahetuskurss on rohkem kui 140
const ticker = "CURRENCY:USDJPY";
const email = "evgeny.tailov@gmail.com";
On võimalik käivita funktsioon manuaalselt ka, kui ei tahad oodata 10 minutit or sinu valitud aega vahemik.

Kätte saanud e-mail teavitus

Tahan muuta kood nii, et teavitus saabub, kui väärtus on vähem kui piir
function checkCurrency() {
const threshold = 200; // saadan e-mail, kui valitud vahetuskurss on vähem kui 200
if (values[0][1] < threshold)

