Utilizza Fogli Google per inviare un'e-mail in base al valore della cella
Nel seguente tutorial, imparerai come verificare il valore di una cella in Fogli Google e se il valore supera un certo limite di soglia, puoi inviare automaticamente un'email di avviso a qualsiasi indirizzo email che ti piace.
Ci sono molti usi per questo script. È possibile ricevere un avviso se i guadagni giornalieri nel report delle vendite scendono al di sotto di un determinato livello. Oppure potresti ricevere un'e-mail se i dipendenti segnalano di aver fatturato il cliente per troppe ore, nel tuo foglio di calcolo del tracciamento del progetto.
Non importa l'applicazione, questo script è molto potente. Ti farà risparmiare anche il tempo di dover monitorare manualmente gli aggiornamenti del foglio di calcolo.
Passaggio 1: invio di un'e-mail con Fogli Google
Prima di poter creare uno script di Google Apps per inviare un'email da Fogli Google, avrai anche bisogno di un indirizzo email Gmail, a cui Google Apps Script accederà per inviare le tue email di avviso.
Dovrai anche creare un nuovo foglio di calcolo che contenga un indirizzo email.
Basta aggiungere una colonna del nome e una colonna del messaggio e compilarli con la persona a cui si desidera ricevere l'email di avviso.
Ora che hai un indirizzo email per inviare un'email di avviso, è ora di creare il tuo script.
Per entrare nell'editor degli script, fare clic su Utensili, e quindi fare clic Editor di script.
Vedrai una finestra di script con una funzione predefinita chiamata myFunction (). Rinominare questo a Invia una email().
Successivamente, incolla il seguente codice all'interno della funzione SendEmail ():
// Recupera l'indirizzo email var emailRange = SpreadsheetApp.getActiveSpreadsheet (). GetSheetByName ("Sheet1"). GetRange ("B2"); var emailAddress = emailRange.getValues (); // Invia email di avviso. var message = 'Questa è la tua email di avviso!'; // Seconda colonna var subject = 'Il tuo foglio di calcolo di Google Alert'; MailApp.sendEmail (indirizzo email, oggetto, messaggio);
Ecco come funziona questo codice:
- getRange e getValues tira il valore dalla cella specificata nel metodo getRange.
- messaggio var e soggetto variabile definisce il testo che sta per costruire la tua email di avviso.
- Il MailApp.sendEmail funzione esegue infine funzione di invio di e-mail di Google Scripts utilizzando il tuo account Google collegato.
Salvare lo script facendo clic su disco icona, quindi eseguirlo facendo clic su correre icona (freccia destra).
Tieni presente che Google Script necessita dell'autorizzazione per accedere al tuo account Gmail per inviare l'email. Quindi la prima volta che esegui lo script potresti vedere un avviso come di seguito.
Clicca su Autorizzazioni di revisione, e vedrai un'altra schermata di avviso che dovrai bypassare.
Questa schermata di avviso è dovuta al fatto che stai scrivendo un Google Script personalizzato che non è registrato come ufficiale.
Basta fare clic su Avanzate, e quindi fare clic su Vai a SendEmail (non sicuro) collegamento.
Dovrai farlo solo una volta. Il tuo script verrà eseguito e l'indirizzo email specificato nel foglio di lavoro riceverà un'email come quella qui sotto.
Passaggio 2: lettura di un valore da una cella in Fogli Google
Ora che hai scritto con successo uno script di Google Apps che può inviare un'e-mail di avviso, è ora di rendere più funzionale quella email di avviso.
Il prossimo passo che imparerai è come leggere un valore di dati da un foglio di calcolo di Google, controllare il valore ed emettere un messaggio a comparsa se tale valore è superiore o inferiore a un limite superiore.
Prima di poterlo fare, devi creare un altro foglio nel foglio di lavoro Google con cui stai lavorando. Chiama questo nuovo foglio "MyReport".
Tieni presente che la cella D2 è quella che desideri controllare e confrontare. Immagina di voler sapere ogni mese se le tue vendite totali sono scese sotto i $ 16.000.
Creiamo lo script di Google Apps che lo fa.
Tornare nella finestra di Script Editor facendo clic su Utensili e poi Script Editor.
Se stai utilizzando lo stesso foglio di lavoro, avrai ancora il Invia una email() funzione in là. Taglia quel codice e incollalo nel Blocco note. Ne avrai bisogno in seguito.
Incolla la seguente funzione nella finestra del codice.
function CheckSales () // Recupera le vendite mensili var monthSalesRange = SpreadsheetApp.getActiveSpreadsheet (). getSheetByName ("MyReport"). getRange ("D2"); var monthSales = monthSalesRange.getValue (); var ui = SpreadsheetApp.getUi (); // Controlla le vendite totali se (monthSales < 16000) ui.alert('Sales too low!');
Come funziona questo codice:
- Carica il valore dalla cella D2 nel monthSales variabile.
- L'istruzione IF confronta le vendite mensili nella cella D2 a $ 16.000
- Se il valore è superiore a 16.000, il codice attiverà una finestra di messaggio del browser con un avviso.
Salva questo codice ed eseguilo. Se funziona correttamente, dovresti vedere il seguente messaggio di avviso nel tuo browser.
Ora che hai uno script di Google Apps che può inviare un avviso email e un altro script che può confrontare un valore da un foglio di calcolo, sei pronto per combinare i due e inviare un avviso invece di attivare un messaggio di avviso.
Fase 3: Mettere tutto insieme
Ora è il momento di combinare i due script che hai creato in un singolo script.
A questo punto, dovresti avere un foglio di calcolo con una scheda denominata Foglio1 che contiene il destinatario dell'e-mail di avviso. L'altra scheda denominata MyReport contiene tutte le informazioni di vendita.
Tornando allo Script Editor, è tempo di mettere tutto ciò che hai imparato finora per esercitarti.
Sostituisci tutto il codice nell'editor di script con le tue due funzioni, modificato come mostrato qui.
function CheckSales () // Recupera le vendite mensili var monthSalesRange = SpreadsheetApp.getActiveSpreadsheet (). getSheetByName ("MyReport"). getRange ("D2"); var monthSales = monthSalesRange.getValue (); // Controlla le vendite totali se (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);
Notare le modifiche qui.
All'interno dell'istruzione IF, basta incollare il Invia una email sceneggiatura all'interno del CheckSales () funzione, all'interno delle parentesi di istruzione if.
In secondo luogo, concatenare il monthSales variabile alla fine del messaggio di posta elettronica utilizzando il + personaggio.
L'unica cosa che rimane da fare è attivare la funzione CheckSales () ogni mese.
Per fare ciò, nell'editor di script:
- Clicca sul modificare voce di menu, quindi fare clic su Trigger del progetto corrente.
- Nella parte inferiore dello schermo, fare clic su crea un nuovo innesco.
- Seleziona il CheckSales funzione da eseguire.
- Modificare Seleziona la fonte dell'evento a tempo-driven.
- Modificare Seleziona il tipo di trigger basato sul tempo a Timer mensile.
Clic Salvare per finalizzare il grilletto.
Ora, ogni mese verrà eseguito il nuovo script e verrà confrontato l'importo totale delle vendite mensili nella cella D2 a $ 16.000.
Se è inferiore, invierà un'e-mail di avviso che ti informerà delle basse vendite mensili.
Come puoi vedere, gli script di Google Apps racchiudono molte funzionalità in un piccolo pacchetto. Con poche semplici righe di codice, puoi fare cose incredibili.
Se vuoi provare ancora, prova ad aggiungere il limite di confronto di $ 16.000 in un'altra cella del foglio di calcolo e poi a leggerlo nello script prima di fare il confronto. In questo modo, puoi modificare il limite semplicemente cambiando il valore nel foglio.
Modificando il codice e aggiungendo nuovi blocchi di codice, puoi sfruttare queste semplici cose che impari, per creare infine alcuni script di Google sorprendenti.