Gebruik Google Spreadsheets om een e-mail te verzenden op basis van celwaarde

Wist je dat het mogelijk is om e-mail rechtstreeks vanuit Google Spreadsheets te verzenden met Google Apps Script? Met enkele eenvoudige code kunt u een celwaarde gebruiken om een waarschuwingsbericht in uw inbox te activeren.
Het verzenden van een e-mail van Google Spreadsheets vereist het gebruik van een Google Apps-script. Maar maak je geen zorgen, als je nog nooit een Google Apps-script hebt gemaakt, is het verzenden van een e-mail erg eenvoudig.
In de volgende zelfstudie gaat u lerenhoe u de waarde van een cel in Google Spreadsheets kunt controleren en als de waarde een bepaalde drempelwaarde overschrijdt, kunt u automatisch een waarschuwingsmail sturen naar elk gewenst e-mailadres.
Er zijn veel toepassingen voor dit script. U kunt een melding ontvangen als de dagelijkse inkomsten in uw verkooprapport onder een bepaald niveau komen. Of u kunt een e-mail ontvangen als uw werknemers melden dat ze de klant te veel uren hebben gefactureerd, in uw spreadsheet voor het bijhouden van projecten.
Ongeacht de toepassing, dit script is zeer krachtig. Het bespaart u ook de tijd dat u uw spreadsheetupdates handmatig moet controleren.
Stap 1: Een e-mail verzenden met Google Spreadsheets
Voordat u een Google Apps Script kunt maken om een e-mail van Google Spreadsheets te verzenden, hebt u ook een Gmail-e-mailadres nodig, waartoe Google Apps Script toegang heeft om uw waarschuwings-e-mails te verzenden.
U moet ook een nieuwe spreadsheet maken die een e-mailadres bevat.
Voeg een naamkolom en een e-mailkolom toe en vul deze in met de persoon aan wie u de waarschuwingsmail wilt ontvangen.

Nu je een e-mailadres hebt om een waarschuwingsmail naar te sturen, is het tijd om je script te maken.
Klik op om naar de scripteditor te gaan Hulpmiddelenen klik vervolgens op Script-editor.
U ziet een scriptvenster met een standaardfunctie genaamd myFunction (). Hernoem dit naar SendEmail ().
Plak vervolgens de volgende code in de SendEmail () -functie:
// Fetch the email address
var emailRange = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Sheet1").getRange("B2");
var emailAddress = emailRange.getValues();
// Send Alert Email.
var message = "This is your Alert email!"; // Second column
var subject = "Your Google Spreadsheet Alert";
MailApp.sendEmail(emailAddress, subject, message);
Dit is hoe deze code werkt:
- getRange en GetValues haalt de waarde op uit de cel die is opgegeven in de methode getRange.
- var bericht en var onderwerp definieert de tekst die uw waarschuwingsmail gaat maken.
- De MailApp.sendEmail functie voert eindelijk Google Scripts verzenden e-mail functie met behulp van uw verbonden Google-account.
Sla het script op door op te klikken schijf pictogram en voer het uit door op te klikken rennen pictogram (pijl naar rechts).
Houd er rekening mee dat Google Script toestemming nodig heeft om toegang te krijgen tot uw Gmail-account om de e-mail te verzenden. Dus de eerste keer dat u het script uitvoert, ziet u mogelijk een melding zoals hieronder.

Klik op Toestemmingen controlerenen u ziet nog een waarschuwingsscherm dat u moet omzeilen.
Dit waarschuwingsscherm is te wijten aan het feit dat u een aangepast Google-script schrijft dat niet als officieel is geregistreerd.

Klik gewoon op gevorderden klik vervolgens op Ga naar SendEmail (onveilig) koppeling.
U hoeft dit maar één keer te doen. Uw script wordt uitgevoerd en het e-mailadres dat u in uw spreadsheet hebt opgegeven, ontvangt een e-mail zoals hieronder.

Stap 2: Een waarde uit een cel lezen in Google Spreadsheets
Nu u met succes een Google Apps-script hebt geschreven dat een waarschuwings-e-mail kan verzenden, is het tijd om die waarschuwings-e-mail functioneler te maken.
De volgende stap die u leert, is hoe u een gegevenswaarde uit een Google-spreadsheet kunt lezen, de waarde kunt controleren en een pop-upbericht kunt verzenden als die waarde boven of onder een bovengrens ligt.
Voordat u dit kunt doen, moet u nog een blad maken in de Google Spreadsheet waarmee u werkt. Noem dit nieuwe blad "MyReport".

Houd er rekening mee dat cel D2 degene is die u wilt controleren en vergelijken. Stel je voor dat je elke maand wilt weten of je totale omzet onder $ 16.000 is gedaald.
Laten we het Google Apps-script maken dat dat doet.
Ga terug naar uw Script Editor-venster door op te klikken Hulpmiddelen en toen Scripteditor.
Als u dezelfde spreadsheet gebruikt, hebt u nog steeds de SendEmail () functie daar. Knip die code en plak deze in Kladblok. Je hebt het later nodig.
Plak de volgende functie in het codevenster.
function CheckSales() {
// Fetch the monthly sales
var monthSalesRange = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("MyReport").getRange("D2");
var monthSales = monthSalesRange.getValue();
var ui = SpreadsheetApp.getUi();
// Check totals sales
if (monthSales < 16000){
ui.alert("Sales too low!");
}
}
Hoe deze code werkt:
- Laad de waarde uit de cel D2 in de monthSales variabel.
- De IF-verklaring vergelijkt de maandelijkse verkopen in cel D2 met $ 16.000
- Als de waarde meer dan 16.000 is, activeert de code een browserbox met een waarschuwing.
Sla deze code op en voer deze uit. Als het correct werkt, zou u het volgende waarschuwingsbericht in uw browser moeten zien.

Nu je een Google Apps-script hebt dat kanstuur een e-mailwaarschuwing en een ander script dat een waarde uit een spreadsheet kan vergelijken, u bent klaar om de twee te combineren en een waarschuwing te verzenden in plaats van een waarschuwingsbericht te activeren.
Stap 3: Alles samenbrengen
Nu is het tijd om de twee scripts die u hebt gemaakt, te combineren tot één script.
Op dit punt zou u een spreadsheet met een tabblad genaamd Sheet1 moeten hebben dat de ontvanger van de waarschuwingsmail bevat. Het andere tabblad genaamd MyReport bevat al uw verkoopinformatie.
Terug in de Script Editor is het tijd om alles wat je tot nu toe hebt geleerd in praktijk te brengen.
Vervang alle code in de scripteditor door uw twee functies, bewerkt zoals hier getoond.
function CheckSales() {
// Fetch the monthly sales
var monthSalesRange = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("MyReport").getRange("D2");
var monthSales = monthSalesRange.getValue();
// Check totals sales
if (monthSales < 16000){
// Fetch the email address
var emailRange = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Sheet1").getRange("B2");
var emailAddress = emailRange.getValues();
// Send Alert Email.
var message = "This month your sales were " + monthSales; // Second column
var subject = "Low Sales Alert";
MailApp.sendEmail(emailAddress, subject, message);
}
}
Let hier op de bewerkingen.
Plak in de IF-instructie SendEmail script binnenkant van de CheckSales () functie, binnen de if-instructiehaken.
Ten tweede, voeg de monthSales variabele tot het einde van het e-mailbericht met de + karakter.
Het enige dat u nog hoeft te doen, is de functie CheckSales () elke maand activeren.
Om dit te doen, in de scripteditor:
- Klik op de Bewerk menuoptie en klik vervolgens op Triggers van het huidige project.
- Klik onderaan het scherm op maak een nieuwe trigger.
- Selecteer de CheckSales functie uitvoeren.
- Verandering Selecteer gebeurtenisbron naar -Tijdgestuurde.
- Verandering Selecteer het type op tijd gebaseerde trigger naar Maand timer.
Klik Opslaan om de trigger te voltooien.

Nu wordt elke maand uw nieuwe script uitgevoerd en wordt het totale maandelijkse verkoopbedrag in cel D2 vergeleken met $ 16.000.
Als het minder is, stuurt het een waarschuwing per e-mail over de lage maandelijkse verkopen.

Zoals u kunt zien, bevat Google Apps Scripts veel functionaliteit in een klein pakket. Met slechts een paar simpele regels code kun je een aantal behoorlijk verbazingwekkende dingen doen.
Als je meer wilt experimenteren, probeer dan toe te voegende vergelijkingslimiet van $ 16.000 in een andere cel in de spreadsheet en lees dat in uw script voordat u de vergelijking uitvoert. Op deze manier kunt u de limiet wijzigen door de waarde in het blad te wijzigen.
Door de code aan te passen en nieuwe codeblokken toe te voegen, kunt u voortbouwen op deze eenvoudige dingen die u leert, om uiteindelijk enkele verbazingwekkende Google-scripts te bouwen.
laat een reactie achter