Använd Google Sheets för att skicka ett e-postmeddelande baserat på cellvärde

Visste du att det är möjligt att skicka e-post direkt från Google Sheets med Google Apps-skript? Med någon enkel kod kan du använda ett cellvärde för att utlösa ett varningsmeddelande till din inkorg.
Att skicka ett e-postmeddelande från Google Sheets kräver användning av ett Google Apps-skript. Men oroa dig inte, om du aldrig har skapat ett enda Google Apps-skript tidigare, är det mycket enkelt att skicka ett e-postmeddelande.
I följande handledning kommer du att lära dighur man kontrollerar värdet på en cell i Google Sheets, och om värdet överskrider en viss tröskelgräns kan du automatiskt skicka ett varningsmeddelande till vilken e-postadress du vill.
Det finns många användningsområden för detta skript. Du kan få en varning om de dagliga intäkterna i din försäljningsrapport sjunker under en viss nivå. Eller så kan du få ett e-postmeddelande om dina anställda rapporterar att de har fakturerat klienten för många timmar i ditt projektspårnings-kalkylblad.
Oavsett applikation är detta skript mycket kraftfullt. Det sparar också tiden för dig att behöva övervaka dina kalkylarkuppdateringar manuellt.
Steg 1: Skicka ett e-postmeddelande med Google Sheets
Innan du kan skapa ett Google Apps-skript för att skicka ett e-postmeddelande från Google Sheets, behöver du också en Gmail-e-postadress, som Google Apps Script har åtkomst för att skicka ut dina varningsmeddelanden.
Du måste också skapa ett nytt kalkylblad som innehåller en e-postadress.
Lägg bara till en namnkolumn och en e-postkolumn och fyll i dem med personen du vill ta emot varningsmeddelandet.

Nu när du har en e-postadress att skicka ett varningsmeddelande till är det dags att skapa ditt skript.
Klicka på för att komma in i skriptredigeraren Verktygoch klicka sedan på Manusredaktör.
Du ser ett skriptfönster med en standardfunktion som heter myFunction (). Byt namn på detta till Skicka epost().
Klistra sedan in följande kod i funktionen SendEmail ():
// 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);
Så här fungerar den här koden:
- getRange och getValues drar värdet från den cell som anges i getRange-metoden.
- var meddelande och var ämne definierar texten som kommer att bygga din e-postmeddelande.
- De MailApp.sendEmail funktionen utför slutligen Google Skript skicka e-postfunktion med ditt anslutna Google-konto.
Spara skriptet genom att klicka på disk och kör sedan den genom att klicka på springa ikon (högerpil).
Tänk på att Google Script behöver tillåtelse för att få åtkomst till ditt Gmail-konto för att skicka e-postmeddelandet. Så första gången du kör skriptet kan du se en varning som nedan.

Klicka på Granska behörigheter, och du ser en annan varningsskärm som du kommer att behöva kringgå.
Den här varningsskärmen beror på att du skriver ett anpassat Google-skript som inte är registrerat som ett officiellt.

Klicka bara på Avanceradoch klicka sedan på Gå till SendEmail (osäker) länk.
Du behöver bara göra det en gång. Ditt skript kommer att köras och e-postadressen som du angav i kalkylbladet får ett e-postmeddelande som nedan.

Steg 2: Läsa ett värde från en cell i Google Sheets
Nu när du har skrivit ett Google Apps-skript som kan skicka ett varningsmeddelande är det dags att göra den varningsmeddelanden mer funktionell.
Nästa steg du lär dig är hur du läser ett datavärde ur ett Google-kalkylblad, kontrollerar värdet och ger ett popup-meddelande om det värdet är över eller under en övre gräns.
Innan du kan göra detta måste du skapa ett annat ark i Google Spreadsheet som du arbetar med. Kalla det nya arket "MyReport".

Kom ihåg att cell D2 är den du vill kontrollera och jämföra. Föreställ dig att du vill veta varje månad om din totala försäljning har sjunkit under $ 16 000.
Låt oss skapa Google Apps-skriptet som gör det.
Gå tillbaka till ditt Script Editor-fönster genom att klicka på Verktyg och då Manusredigerare.
Om du använder samma kalkylblad har du fortfarande Skicka epost() fungera där. Klipp av den koden och klistra in den i Anteckningar. Du kommer att behöva det senare.
Klistra in följande funktion i kodfönstret.
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!");
}
}
Så här fungerar koden:
- Ladda värdet från cellen D2 in i monthSales variabel.
- IF-uttalandet jämför den månatliga försäljningen i cell D2 med $ 16 000
- Om värdet är över 16 000 utlöser koden en webbläsarmeddelanderuta med en varning.
Spara den här koden och kör den. Om det fungerar korrekt, bör du se följande varningsmeddelande i din webbläsare.

Nu när du har ett Google Apps-skript som kanskicka en e-postvarning och ett annat skript som kan jämföra ett värde från ett kalkylblad, du är redo att kombinera de två och skicka en varning istället för att utlösa ett varningsmeddelande.
Steg 3: Sätta samman allt
Nu är det dags att kombinera de två skript som du har skapat till ett enda skript.
Vid denna punkt bör du ha ett kalkylblad med en flik som heter Sheet1 som innehåller mottagaren av e-postmeddelanden. Den andra fliken som heter MyReport innehåller all din försäljningsinformation.
Tillbaka i Script Editor är det dags att lägga allt du har lärt dig hittills för att öva.
Byt ut all koden i skripteditorn med dina två funktioner, redigerade som visas här.
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);
}
}
Lägg märke till ändringarna här.
Inuti IF-uttalandet, klistra bara in Skicka epost manus inuti CheckSales () funktion, inuti if if-parenteserna.
För det andra, sammanfoga den monthSales variabel till slutet av e-postmeddelandet med hjälp av + karaktär.
Det enda som finns kvar är att trigga funktionen CheckSales () varje månad.
För att göra detta i skriptredigeraren:
- Klicka på Redigera menypost och klicka sedan på Aktuella projektets triggers.
- Klicka längst ner på skärmen skapa en ny trigger.
- Välj CheckSales funktion att köra.
- Förändra Välj händelsekälla till tidsstyrd.
- Förändra Välj typ av tidsbaserad trigger till Månadstimern.
Klick Spara att slutföra avtryckaren.

Nu kommer ditt nya skript varje månad att köras och jämför det totala månatliga försäljningsbeloppet i cell D2 med $ 16 000.
Om det är mindre kommer det att skicka ett varningsmeddelande som meddelar dig om den låga månatliga försäljningen.

Som ni ser, paketerar Google Apps-skript mycket funktionalitet i ett litet paket. Med bara några enkla kodrader kan du göra några ganska fantastiska saker.
Om du vill experimentera lite mer kan du försöka lägga tilljämförelsegränsen på 16 000 dollar till en annan cell i kalkylarket och läs sedan in det i ditt skript innan du gör jämförelsen. På detta sätt kan du ändra gränsen bara genom att ändra värdet i arket.
Genom att finjustera koden och lägga till nya blockblock kan du bygga vidare på dessa enkla saker du lär dig för att så småningom bygga några fantastiska Google-skript.
Lämna en kommentar