[apps script] Inviare tramite Gmail un’email con allegato da Drive

Questo esempio è la prosecuzione di quanto già visto in [apps script] Inviare tramite Gmail un’email ad un elenco di contatti in Spreadsheet

Voglio apportare solo una piccola modifica al codice per inviare un allegato salvato su Google Drive a tutti i soggetti nella lista. Per i riferimenti di programmazione rimando alla pagina della guida ufficiale.

Per prelevare un file da Google Drive dobbiamo anzitutto ottenere il suo riferimento univoco. Per farlo ci sono diversi modi, nel mio esempio utilizzerò un file pdf come questo qua. Anzitutto lo carico su Drive e poi cliccandoci sopra col destro scelgo Anteprima.

Dal menu in alto a destra seleziono Apri in un’altra finestra.

A questo punto nella barra dell’indirizzo vedrò qualcosa come https://drive.google.com/file/d/1234567890abcdefghijklmnopqrstuvwxyz/view

Copio il codice alfanumerico che ho evidenziato in rosso, che è l’identificativo univoco per ciascun file. Una volta copiato vado a modificare il mio codice nel modo seguente.

In particolare con la prima istruzione aggiunta prelevo il file da Drive, cosa che richiederà dei permessi aggiuntivi.

Mentre con file.getAs(MimeType.PDF) creo il blob del file in formato PDF.

Fatto questo il mio nuovo script invia un’email a ciascun membro della lista con allegato il suddetto file.

2 thoughts on “[apps script] Inviare tramite Gmail un’email con allegato da Drive

  1. Ciao Petar, ho bisogno di effettuare un invio automatico una volta al mese di un foglio google che ho su drive sempre allo stesso indirizzo mail. Vorrei automatizzare l’invio in xslx. da quello che ho capito guardando il tuo codice per l’estensione del file dovrei modificare l’istruzione file.getAs(MimeType.PDF). Scusa l’ignoranza ma non so compilare. Quello che vorrei riuscire a capire è come posso modificare il tuo codice in modo che non vada a cercare l’indirizzo mail sul foglio ma utilizzi un unico indirizzo mail che scelgo io. per automatizzare lo script se non mi sbaglio è sufficiente impostare un attivatore.
    Grazie per l’attenzione. Luca.

    1. Ciao Luca, è sufficiente utilizzare MimeType.MICROSOFT_EXCEL per i file XLSX (altrimenti MimeType.MICROSOFT_EXCEL_LEGACY per quelli antecedenti al 2008)

Rispondi

Questo sito usa Akismet per ridurre lo spam. Scopri come i tuoi dati vengono elaborati.