Använd Google Sheets för att skicka ett e-postmeddelande baserat på cellvärde
Google Kontor Google Docs Hjälte / / March 17, 2020
Senast uppdaterad den

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 dig hur du 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 det här skriptet. 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 i för många timmar i ditt kalkylblad för projektspårning.
Oavsett applikation är detta skript mycket kraftfullt. Det kommer också att spara tid 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 e-postadress i Gmail, som Google Apps-skriptet kommer åt 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 få 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 ():
// Hämta e-postadressen. var emailRange = SpreadsheetApp.getActiveSpreadsheet (). getSheetByName ("Sheet1"). getRange ("B2"); var emailAddress = emailRange.getValues (); // Skicka e-postmeddelande. var meddelande = 'Detta är din varningsmeddelande!'; // Andra kolumnen. var subject = 'Your Google Spreadsheet Alert'; MailApp.sendEmail (e-postadress, ämne, meddelande);
Så här fungerar den här koden:
- getRange och getValues drar värdet från cellen som anges i getRange-metoden.
- var meddelande och var ämne definierar texten som kommer att bygga ditt varningsmeddelande.
- 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 åtkomst 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 körs 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 det 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 behöver det senare.
Klistra in följande funktion i kodfönstret.
funktion CheckSales () {// Hämta den månatliga försäljningen var monthSalesRange = SpreadsheetApp.getActiveSpreadsheet (). getSheetByName ("MyReport"). getRange ("D2"); var monthSales = monthSalesRange.getValue (); var ui = SpreadsheetApp.getUi (); // Kontrollera total försäljning om (månadssäljning <16000) {ui.alert ('Försäljning för låg!'); } }
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 kan skicka en e-postvarning och ett annat skript som kan jämföra en värde från ett kalkylblad är du redo att kombinera de två och skicka en varning istället för att utlösa en varning meddelande.
Steg 3: Sätta samman allt
Nu är det dags att kombinera de två skript som du har skapat till ett enda skript.
Vid det här laget bör du ha ett kalkylblad med en flik som heter Sheet1 som innehåller mottagaren av e-postmeddelandet. 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 skriptredigeraren med dina två funktioner, redigerade som visas här.
funktion CheckSales () {// Hämta den månatliga försäljningen var monthSalesRange = SpreadsheetApp.getActiveSpreadsheet (). getSheetByName ("MyReport"). getRange ("D2"); var monthSales = monthSalesRange.getValue (); // Kontrollera total försäljning om (månadssäljning <16000) {// Hämta e-postadressen var emailRange = SpreadsheetApp.getActiveSpreadsheet (). GetSheetByName ("Sheet1"). GetRange ("B2"); var emailAddress = emailRange.getValues (); // Skicka e-postmeddelande. var meddelande = 'Denna månad var din försäljning' + månadSalg; // Andra kolumnen var ämne = 'Low Sales Alert'; MailApp.sendEmail (e-postadress, ämne, meddelande); } }
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 jämföra 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 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 till jämförelsegränsen på $ 16 000 i en annan cell i kalkylarket och sedan läsa 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 kodblock kan du bygga på dessa enkla saker du lär dig för att så småningom bygga några fantastiska Google-skript.