Email mit PDF Anhang versenden als Google Tabellen Script (Snippet)
In diesem sehr kurzen Tutorial und sogenannten Snippet, "Email mit PDF Anhang versenden als Google Tabellen Script", zeige ich Euch wie Ihr ein Script erstellen könnt welches eine Email versendet. Hier wird im Anhang der Email die Tabelle im PDF Format mitgeschickt.
Im Script fĂŒr die Funktion selbst habe ich die einzelnen Zeilen kommentiert. Hiermit sollte es eigentlich einfach sein das Script vom Aufbau her zu verstehen.
Das Script könnt Ihr kopieren und mĂŒsst es in Euren Scripteditor einfĂŒgen.
Vorab ein Video welches Euch zeigt wie man ein einfaches Script programmieren kann und wie Ihr den Scripteditor aufrufen könnt:
Mein erstes Script programmieren mit GOOGLE Tabellen
Achtung:
Benutzt zum Ăben eine separate Tabelle fĂŒr Testzwecke oder eine Kopie des Originals damit Euch keine Daten verloren gehen.
Beschreibung des Scriptes Email mit PDF Anhang versenden als Google Tabellen Script:
Die Funktion emailMitPDFAnhangVersenden() ist eine Funktion die Ihr direkt ĂŒber den Scripteditor aufrufen könnt. Ihr könnt natĂŒrlich auch einen Button erstellen um diese Funktion ĂŒber ein Klick darauf auszufĂŒhren. Wie das mit dem Button funktioniert zeige ich in dem oben angegebenen Video.
Tabelle vorbereiten:
Ich habe eine kleine Tabelle vorbereitet die Daten wie Betreff, Email und Nachricht enthalten die ĂŒber das Script ausgelesen werden. Hier könnt Ihr im Script natĂŒrlich auch feste Werte eintragen damit diese in der Tabelle die ja als PDF Datei verschickt wird nicht sichtbar sind.
Ihr solltet wenn Ihr dieses Script benutzt zum Testen darauf achten dass die Daten auch in den richtigen Zellen stehen:
B2: Betreff der Email
B3: Emailadresse des EmpfÀngers
B4: Die Nachricht
Der Aufbau der Tabelle kann in etwa so aussehen:
Beschreibung des Scripts
Im oberen Bereich des Scriptes wird auf das aktive Tabellenblatt zugegriffen.
AnschlieĂend werden ĂŒber getValue die Daten fĂŒr den Betreff, die Emailadresse des EmpfĂ€ngers und die Nachricht aus den Zellen B2 bis B4 ausgelesen und den entsprechenden Variablen zugewiesen.
AnschlieĂend wird die Tabelle selbst ĂŒber die Tabellen ID zugewiesen. Es lĂ€sst sich ganz einfach die Tabellen ID ĂŒber den Aufruf von getID() holen.
Damit es eine PDF Datei wird mĂŒssen wir das ĂŒber getAs('application/pdf') holen und umwandeln.
Der Anhang wird vorbereitet und der Name sowie der Inhalt und Typ wird festgelegt. Damit wir den Betreff als Dateinamen verwenden können habe ich direkt hinter den betreff +".pdf" eingetragen. Damit erhalten wir den Betreff inklusive angehÀngten ".pdf". Das ist wichtig weil Euch eventuell sonst nach dem Download die Datei nicht als PDF Datei angezeigt wird.
Bei mir wurde allerdings auch ohne +".pdf" die Datei in GOOGLE Mail korrekt angezeigt. Nur nach dem Download gab es Probleme.
Zum Schluss wird das ganze dann inklusive Anhang verschickt.
Email mit PDF Anhang versenden als Google Tabellen Script
function emailMitPDFAnhangVersenden(){ // Auf das aktive Tabellenblatt zugreifen var as = SpreadsheetApp.getActive(); // Den Betreff fĂŒr die Email aus Zelle B2 auslesen var betreff = as.getRange("B2").getValue(); // Die Emailadresse fĂŒr den EmpfĂ€nger aus Zelle B3 auslesen var emailEmpfaengerAdresse = as.getRange("B3").getValues(); // Die Nachricht fĂŒr die Email aus der Zelle B4 auslesen var nachricht = as.getRange("B4").getValues(); // Das Tabellenblatt als PDF der Variablen pdf zuweisen var pdf = DriveApp.getFileById(as.getId()).getAs('application/pdf').getBytes(); // Den Anhang festlegen (Name des Anhangs, Inhalt, Typ) var anhang = {fileName:(betreff+".pdf"),content:pdf, mimeType:'application/pdf'}; // Senden der Email MailApp.sendEmail(emailEmpfaengerAdresse, betreff, nachricht, {attachments:[anhang]}); }
Die Benutzung der Scripte erfolgt natĂŒrlich wie immer auf eigene Gefahr.
Euch gefÀllt das Script und Ihr wollt Euch gerne bedanken?
Hier ist meine AMAZON – Wunschliste [HIER KLICKEN] đ
Dies ist Teil der Serie: "Google Tabellen Script Programmierung"
Dieses Tutorial ist Teil einer Serie die als eine Art Datenbank fĂŒr kleinere Snippets dient. Damit habt Ihr die Möglichkeit fĂŒr Eure Projekte einen Teil des Codes hier direkt zu kopieren und wie in Modulbauweise das ganze anzuwenden.
Die Liste aller Snippets findet Ihr hier:
Google Tabellen Script Programmierung
9 Comments
Hallo,
super Anleitung, wie bekomme ich es hin das nur ein bestimmter Tab als PDF versendet wird?
Viele GrĂŒĂe
Das habe ich noch nicht getestet aber schau mal hier, das sollte Dir weiterhelfen:
use-google-app-script-to-email-only-one-of-the-4-tabs-in-a-worksheet
Danke, der Ansatz funktioniert
Wunderbar, das freut mich zu hören đ
Klasse Tutorial. Möglicherweise hilft mir das bei eine kleinen Projekt. Ich sammle Daten ĂŒber Google Formular in einer damit verknĂŒpften Google Tabelle. Nun möchte ich das bei jedem neuen Eintrag eine PDF mit den ĂŒber das Formular erfassten Daten versandt wird. Eine Idee dazu?
GrĂŒĂe,
Markus
Die Basis hast Du ja schon hier im Tutorial. Wenn Du jetzt noch das Tutorial schaust welches im oberen Bereich angegeben ist ( https://toptorials.com/mein-erstes-script-programmieren-mit-google-tabellen/ ), dann siehst Du wie man einen Button mit der ganzen Sache Verbindet. Das heiĂt, wenn alle Daten eingegeben oder aktualisiert wurden, kannst Du ĂŒber den Button das ganze senden lassen.
Die Nachricht musst Du natĂŒrlich verlĂ€ngern und weitere Zellen (also alles was Du benötigst) hinzufĂŒgen.
Probier das mal aus, wenn Du an einer Stelle nicht weiter kommst, dann kannst Du das Script ja mal hier posten.
Viele GrĂŒĂe
Chris
Kurze Information: Ich weiĂ nicht ob es nur bei mir so ist, aber falls jemand vor dem selben Problem steht, dass es nicht funktioniert: Einfach mal das MailApp durch GmailApp austauschen
Sehr gut und danke !!!
Genie!! danke dir