Gebruik Google Spreadsheets om een e-mail te verzenden op basis van celwaarde
Google Kantoor Google Documenten Held / / March 17, 2020
Laatst geupdate op
Wist je dat het mogelijk is om e-mail rechtstreeks vanuit Google Spreadsheets te verzenden met Google Apps Script? Met een simpele code kun je een celwaarde gebruiken om een waarschuwingsbericht naar je inbox te sturen.
Voor het verzenden van een e-mail vanuit Google Spreadsheets is het gebruik van een Google Apps-script vereist. Maar maak je geen zorgen, als je nog nooit een enkel Google Apps-script hebt gemaakt, is het verzenden van een e-mail heel eenvoudig.
In de volgende tutorial leert u hoe u de waarde van een cel kunt controleren Google Spreadsheets, en als de waarde een bepaalde drempelwaarde overschrijdt, kunt u automatisch een waarschuwingse-mail sturen naar elk gewenst e-mailadres.
Er zijn veel toepassingen voor dit script. U kunt een waarschuwing ontvangen als de dagelijkse inkomsten in uw verkooprapport onder een bepaald niveau dalen. 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 erg 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 te verzenden van Google Spreadsheetsheeft u ook een Gmail-e-mailadres nodig, waar Google Apps Script toegang toe heeft om uw waarschuwings-e-mails te verzenden.
Je moet ook een nieuwe spreadsheet maken met een e-mailadres.
Voeg gewoon een naamkolom en een e-mailkolom toe en vul ze in met de persoon die u de waarschuwingsmail wilt ontvangen.
Nu u een e-mailadres heeft om een waarschuwingsmail naar te sturen, is het tijd om uw script te maken.
Klik op om naar de scripteditor te gaan Gereedschapen klik vervolgens op Scripteditor.
Je ziet een scriptvenster met een standaardfunctie genaamd myFunction (). Hernoem dit naar SendEmail ().
Plak vervolgens de volgende code in de functie SendEmail ():
// Haal het e-mailadres op. var emailRange = SpreadsheetApp.getActiveSpreadsheet (). getSheetByName ("Sheet1"). getRange ("B2"); var emailAddress = emailRange.getValues (); // E-mail met waarschuwing verzenden. var message = 'Dit is uw waarschuwingsmail!'; // Tweede kolom. var subject = 'Uw Google-spreadsheetwaarschuwing'; MailApp.sendEmail (emailAddress, onderwerp, bericht);
Zo werkt deze code:
- getRange en getValues haalt de waarde uit de cel die is opgegeven in de methode getRange.
- var bericht en var onderwerp definieert de tekst die uw waarschuwings-e-mail gaat samenstellen.
- De MailApp.sendEmail functie voert eindelijk Google Scripts uit, verzend e-mailfunctie met uw verbonden Google-account.
Sla het script op door op te klikken schijf pictogram en voer het vervolgens uit door op te klikken rennen pictogram (pijl naar rechts).
Houd er rekening mee dat Google Script toestemming nodig heeft om toegang te krijgen je Gmail-account om de e-mail te verzenden. Dus de eerste keer dat u het script uitvoert, ziet u mogelijk een waarschuwing zoals hieronder.
Klik op Bekijk de machtigingenen u ziet een ander 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 Geavanceerden klik vervolgens op de Ga naar SendEmail (onveilig) koppeling.
Je hoeft dit maar één keer te doen. Uw script wordt uitgevoerd en het e-mailadres dat u in uw spreadsheet heeft 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 heeft 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 leest, de waarde controleert en een pop-upbericht geeft 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 verkoop onder de $ 16.000 is gezakt.
Laten we het Google Apps-script maken dat dat doet.
Ga terug naar uw Script Editor-venster door op te klikken Gereedschap en toen Scripteditor.
Als je dezelfde spreadsheet gebruikt, heb je nog steeds de SendEmail () functie daarin. Knip die code en plak deze in Kladblok. Je hebt het later nodig.
Plak de volgende functie in het codevenster.
functie CheckSales () {// Haal de maandelijkse verkoop var maandSalesRange = SpreadsheetApp.getActiveSpreadsheet (). getSheetByName ("MyReport"). getRange ("D2"); var monthSales = monthSalesRange.getValue (); var ui = SpreadsheetApp.getUi (); // Controleer de totale verkoop if (monthSales <16000) {ui.alert ('Sales too low!'); } }
Hoe deze code werkt:
- Laad de waarde uit cel D2 in de maandVerkoop variabel.
- De IF-verklaring vergelijkt de maandelijkse verkopen in cel D2 met $ 16.000
- Als de waarde hoger is dan 16.000, activeert de code een browserberichtvenster 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 u een Google Apps-script heeft dat een e-mailwaarschuwing kan verzenden en een ander script dat een kan vergelijken waarde uit een spreadsheet, bent u klaar om de twee te combineren en een waarschuwing te sturen in plaats van een waarschuwing te activeren bericht.
Stap 3: Alles samenvoegen
Nu is het tijd om de twee scripts die je hebt gemaakt te combineren in één script.
Op dit punt zou u een spreadsheet moeten hebben met een tabblad met de naam Sheet1 met de waarschuwingse-mailontvanger. Het andere tabblad genaamd MyReport bevat al uw verkoopinformatie.
Terug in de Scripteditor is het tijd om alles wat je tot nu toe hebt geleerd, in de praktijk te brengen.
Vervang alle code in de scripteditor door uw twee functies, bewerkt zoals hier getoond.
functie CheckSales () {// Haal de maandelijkse verkoop var maandSalesRange = SpreadsheetApp.getActiveSpreadsheet (). getSheetByName ("MyReport"). getRange ("D2"); var monthSales = monthSalesRange.getValue (); // Controleer de totale verkoop als (monthSales <16000) {// Haal het e-mailadres op var emailRange = SpreadsheetApp.getActiveSpreadsheet (). GetSheetByName ("Sheet1"). GetRange ("B2"); var emailAddress = emailRange.getValues (); // E-mail met waarschuwing verzenden. var message = 'Deze maand waren uw verkopen' + monthSales; // Tweede kolom var subject = 'Low Sales Alert'; MailApp.sendEmail (emailAddress, onderwerp, bericht); } }
Let op de bewerkingen hier.
Plak in de IF-instructie de SendEmail script binnen de CheckSales () functie, binnen de if-statement-haakjes.
Ten tweede, voeg de maandVerkoop variabele aan het einde van het e-mailbericht met de + karakter.
Het enige dat u hoeft te doen, is de CheckSales () -functie elke maand te activeren.
Om dit te doen, in de scripteditor:
- Klik op de Bewerk menu-item en klik vervolgens op De triggers van het huidige project.
- Klik onder aan het scherm op maak een nieuwe trigger.
- Selecteer de CheckSales functie uit te voeren.
- Verandering Selecteer gebeurtenisbron naar tijdgestuurd.
- Verandering Selecteer type tijdgebaseerde trigger naar Maand timer.
Klik Opslaan om de trigger af te ronden.
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 waarschuwings-e-mail om u te informeren over de lage maandelijkse verkopen.
Zoals u kunt zien, biedt Google Apps Scripts veel functionaliteit in een klein pakket. Met slechts een paar eenvoudige regels code kun je een aantal fantastische dingen doen.
Als je nog wat meer wilt experimenteren, probeer dan de vergelijkingslimiet van $ 16.000 toe te voegen aan een andere cel in de spreadsheet en lees die in je script voordat je de vergelijking maakt. 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 een aantal fantastische Google Scripts te bouwen.