Hoe e-mail verzenden in een Google-blad met Google Scripts

Leer hoe u Google Scripts kunt gebruiken om productiviteitstools van Google, zoals Spreadsheets en Documenten, te automatiseren en uzelf uren tijd te besparen.

Leer hoe u Google Scripts kunt gebruiken om productiviteitstools van Google, zoals Spreadsheets en Documenten, te automatiseren en uzelf uren tijd te besparen.
Advertentie

Google Scripts is een krachtig hulpmiddel dat u kunt gebruiken om productiviteitstools van Google te automatiseren Een geautomatiseerd Google-spreadsheetrapport maken op basis van analysegegevens Hoe u een geautomatiseerd Google-spreadsheetrapport kunt maken op basis van Analytics-gegevens Lees meer zoals Spreadsheets en Documenten. De mogelijkheid om automatisch e-mails te verzenden, maakt het een extra krachtig hulpmiddel.

Misschien bent u een werknemer en hoopt u maandelijks een e-mail te sturen naar uw baas met automatisch berekende formules in Google Spreadsheets Visualiseer uw gegevens & maak uw spreadsheets Gebruiksvriendelijk met een Excel-dashboard Visualiseer uw gegevens & maak uw spreadsheets Gebruiksvriendelijk met een Excel-dashboard Soms is een eenvoudig spreadsheetformaat niet boeiend genoeg om uw gegevens toegankelijk te maken. Met een dashboard kunt u uw belangrijkste gegevens in een gemakkelijk te verwerken vorm presenteren. Lees verder . Of misschien ben je een manager die veel te veel tijd besteedt aan het e-mailen van individuele leden van je team met dingen zoals prestatiegegevens of statusupdates. De Google Scripts-functie die u in dit artikel zult leren, zal u helpen deze taken uit te voeren en nog veel meer.

Met slechts een kleine inspanning één keer hoeft u nooit meer handmatig gegevens te verzenden. Laat Google Scripts optreden als uw persoonlijke assistent, en doe al het werk voor u.

Uw blad instellen om e-mail te verzenden

De eerste stap om ervoor te zorgen dat uw Google Script e-mail verzendt via Google Spreadsheets, is het correct instellen van een werkblad met alle namen, e-mailadressen en berichten voor alle mensen die u het script wilt laten e-mailen.

In mijn voorbeeld begin ik met een spreadsheet die ik heb ingesteld om automatisch alle gepubliceerde artikelen voor de maand uit Google Analytics te importeren. Een website maken Analyse van website Analytics Dashboard met Google Core Reporting API Een moordenaar maken Website Analytics Dashboard met Google Core Reporting API Wilt u gewoon een site publiceren en deze blindelings uitvoeren, of wilt u een volledig functioneel dashboard dat u te allen tijde laat zien wat er met de site gebeurt? Lees verder . Ik heb een blad 'Alle auteurs' gemaakt dat de gepubliceerde artikelen voor elke auteur weergeeft, en nu wil ik elke individuele auteur een e-mail sturen met zijn / haar mening.

Maak om te beginnen uw speciale e-mailblad door een nieuw blad in uw huidige spreadsheet toe te voegen en het zoiets als "Verzend-e-mails" te noemen.

stuur e-mail google-scripts

In dit nieuwe blad met e-mails verzenden, wilt u een koptekst maken. Elke rij in deze spreadsheet vertegenwoordigt een individuele e-mail die wordt verzonden. Dus in dit voorbeeld heb ik een blad gemaakt voor de naam van de ontvanger, zijn e-mailadres en stukjes van het bericht dat ik in het script ga samenvoegen.

stuur e-mail google-scripts

U kunt een e-mail maken van elke grootte en structuur door kolommen te gebruiken om zowel statische als dynamische informatie bij elkaar te voegen.

stuur e-mail google-scripts

De statische informatie is alleen tekst die ik in de cel heb getypt. Dit verandert niet van maand tot maand. Het is slechts een deel van het e-mailbericht dat altijd hetzelfde blijft. Voor de gegevens die u elke maand wilt wijzigen, kunt u echter functies invoegen die de relevante gegevens van een ander blad in uw spreadsheet importeren.

stuur e-mail google-scripts

Het idee hier is dat telkens wanneer u het blad opent om uw geautomatiseerde rapport te bekijken, u een menu-item hebt waarop u kunt klikken om het Google Script voor verzenden per e-mail uit te voeren en de resultaten naar iedereen te distribueren. Je zult zien hoe je dit nieuwe menu-item aan de onderkant van dit artikel kunt aanpassen.

Als u klaar bent met het maken van uw blad, ziet het er ongeveer zo uit:

stuur e-mail google-scripts

Nu uw blad voor alle afzonderlijke e-mails klaar is, is het eindelijk tijd om het script te schrijven!

Het geautomatiseerde e-mailscript schrijven

Als u uw script wilt schrijven, moet u de scripteditor gebruiken. U vindt de scripteditor in het menu Gereedschappen door Scripteditor te selecteren.

stuur e-mail google-scripts

De scripteditor ziet er ongeveer zo uit. U moet een nieuwe functie openen in de rechterbovenhoek van het venster.

stuur e-mail google-scripts

Kopieer en plak het onderstaande script in het scriptgedeelte.

function sendArticleCountEmails() { var ss = SpreadsheetApp.getActiveSpreadsheet(); ss.setActiveSheet(ss.getSheetByName("Send-Emails")); var sheet = SpreadsheetApp.getActiveSheet(); var dataRange = sheet.getRange("A2:F4"); var data = dataRange.getValues(); for (i in data) { var rowData = data[i]; var emailAddress = rowData[1]; var recipient = rowData[0]; var message1 = rowData[2]; var message2 = rowData[3]; var parameter2 = rowData[4]; var message3 = rowData[5]; var message = 'Dear ' + recipient + ', \n\n' + message1 + ' ' + message2 + ' ' + parameter2 + ' ' + message3; var subject = 'Your article count for this month'; MailApp.sendEmail(emailAddress, subject, message); } } 

Dit script ziet er misschien wat ingewikkeld uit, maar het is eigenlijk helemaal niet. Laten we het opsplitsen zodat u precies weet wat elke regel aan het doen is.

De code doorbreken

Om ervoor te zorgen dat deze functie goed werkt, moet u ervoor zorgen dat het blad waarop al uw e-mailinformatie is opgeslagen, feitelijk het actieve blad is. Anders zal alles wat daarna komt niet werken. Dat is waar deze twee lijnen voor zijn:

 var ss = SpreadsheetApp.getActiveSpreadsheet(); ss.setActiveSheet(ss.getSheetByName("Send-Emails")); 

Vervolgens moeten we alle gegevens uit dat blad extraheren. De methode sheet.GetRange () haalt informatie uit elk cellenbereik dat u opgeeft tussen aanhalingstekens. Vervolgens extraheert de methode dataRange.getValues ​​() de waarden en worden deze opgeslagen in een tweedimensionale array met de naam data .

 var sheet = SpreadsheetApp.getActiveSheet(); var dataRange = sheet.getRange("A2:F4"); var data = dataRange.getValues(); 

Nu we alle gegevens in een array hebben opgeslagen, kunnen we de array doorlopen met behulp van een for- lus. Elk element van de array is een rij met een eendimensionale reeks kolomelementen. U kunt naar elke kolom verwijzen met behulp van een cijfer.

 var rowData = data[i]; var emailAddress = rowData[1]; var recipient = rowData[0]; var message1 = rowData[2]; var message2 = rowData[3]; var parameter2 = rowData[4]; var message3 = rowData[5]; 

Zoals je hierboven kunt zien, heb ik de kolomelementen getrokken in een eendimensionale array met de naam rowData . Vervolgens verwijs ik naar de tweede kolom (om het e-mailadres te verkrijgen) door te verwijzen naar rowData [1], het tweede element van de array (het eerste element van een array is altijd nul).

De volgende stap in deze functie is het samenvoegen van alle segmenten van de berichten waaruit de e-mail bestaat. Het leuke hier is dat je de e-mailinhoud een behoorlijk goed formaat kunt geven door het teken \ n te gebruiken, dit is een harde return. Hier is wat de aaneenschakeling van de e-mailtekst eruit ziet als:

 var message = 'Dear ' + recipient + ', \n\n' + message1 + ' ' + message2 + ' ' + parameter2 + ' ' + message3; 

Het + -teken is de aaneenschakelingsopdracht 16 Excel-formules die u zullen helpen bij het oplossen van problemen in het echte leven 16 Excel-formules die u kunnen helpen om problemen met het echte leven op te lossen De juiste tool is het halve werk. Excel kan berekeningen verwerken en gegevens sneller verwerken dan u uw rekenmachine kunt vinden. We laten u de belangrijkste Excel-formules zien en laten zien hoe u ze kunt gebruiken. Lees verder . U plaatst werkelijke statische tekst in enkele aanhalingstekens. Dus dit bericht wordt samengevoegd door het woord "Geachte" voor de variabele van de ontvanger te plaatsen (mededeling "Beste" heeft een spatie).

Vervolgens voeg je twee carriage returns toe aan het einde. Hiermee wordt het eigenlijke bericht in het lichaam twee regels naar beneden gestart. Vervolgens voegt u het eerste berichtsegment, een spatie, het tweede berichtsegment, een spatie, de variabele toe die elke maand in het bericht wordt ingevoegd en als laatste het laatste deel van het bericht.

Je kunt zoveel delen van het bericht als je wilt hebben, je hoeft alleen maar meer kolommen te gebruiken om het hele bericht in stukjes te maken.

De laatste paar regels van de code hebben zojuist de onderwerpregel voor de e-mail ingesteld (dit kan ook gegevens uit de spreadsheet bevatten als u dat wilde) en ten slotte de methode sendEmail () .

Hoe u uw script kunt triggeren

Terug in het venster Scripteditor, zoekt u gewoon naar de functie "onOpen". Als de functie er is, ziet u waarschijnlijk een aantal codes tussen de haakjes. Ga naar de onderkant van die code en voeg de volgende regels in:

 var spreadsheet = SpreadsheetApp.getActive(); var menuItems = [ {name: 'Send Emails', functionName: 'sendArticleCountEmails'} ]; spreadsheet.addMenu('Send Emails', menuItems); 

Zorg ervoor dat u de exacte naam van uw functie invoert in enkele aanhalingstekens voor de parameter functionName . Dit laadt een aangepast menu-item in uw blad telkens wanneer uw blad opent.

stuur e-mail google-scripts

Wanneer u nu uw spreadsheet maandelijks opent om al uw gegevens te bekijken, hoeft u alleen maar op het menu-item te klikken om de e-mails te verzenden. Hiermee wordt je nieuwe functie uitgevoerd en worden al deze e-mails voor je verzonden. Een klus die u enkele uren in beslag nam, heeft nu slechts één muisklik nodig!

Google Scripts kan u helpen tijd te besparen

Dit is slechts een voorbeeld van de vele manieren waarop u Google Scripts kunt gebruiken om allerlei dingen te automatiseren 4 Google Scripts die Google Spreadsheets veel krachtiger maken 4 Google Scripts die Google Spreadsheets maken Veel krachtiger Google Spreadsheets is geweldig uit de doos, maar het kan nog krachtiger zijn als u Google Scripts gebruikt om zijn mogelijkheden te verbeteren. Lees meer dat u tijd bespaart. Het lastige is dat er van tevoren wel wat moet worden gedaan, maar elke minuut die je besteedt aan het instellen van automatisering zoals deze met behulp van scripting is vele uren bespaard. Denk aan alle andere fantastische dingen die je met die uren kunt doen!

Heeft u ooit slimme Google Scripts gebruikt om uw productiviteit te automatiseren? Deel je eigen voorbeelden in de comments hieronder!

In this article