2016-10-04 9 views
0

私は現在、Googleのアプリケーションスクリプトを使用して毎日Googleシートを電子メールで送信しようとしています。電子メールの本文を入力します。これまでのところ私は以下のコードを思いついたが、残念ながら私の問題の解決策としては不十分なpdf形式の電子メールを送信する。私が得ることができるすべての助けに感謝します。Googleのシートをhtmlに変換し、Googleのアプリケーションスクリプトを使用してメールとして送信

function sendEmailWithAttachments() { 
    var fileId = 'Sheet id'; 
    // Send an email with an attachment: a file from Google Drive (as a PDF) 
    var file = DriveApp.getFileById(fileId); 
    MailApp.sendEmail('Email', 'file name', 
    'One File IS Attached.', { 
     name: 'Subject', 
     attachments: [file.getAs(MimeType.PDF), ] 
    }); 
    MailApp.sendEmail('email2', 'file name', 
    'One File IS Attached.', { 
     name: 'subject', 
     attachments: [file.getAs(MimeType.PDF), ] 
    }); 
} 
+0

SpreadsheetAppを使用して値を取得し(場合によってはフォーマットする)、HTMLコンテンツを自分で作成する必要があります。 –

答えて

0

file.getAs()機能は、PDFファイルとしてそれを取得する関数を語っているファイルとMimeType.PDFが渡さを取得しています。 attachments: []は、このpdfを電子メールの添付ファイルとして設定し、本文ではありません。

私はあなたの欲望を読んで、提示されたデータを含むHMLとしてメール本文を作成しています。 これを参照してくださいtutorial on a Simple Mail Mergeテンプレートを介して表示されるようにデータを書式設定することができます。

+0

ありがとうございます。残念ながら、差し込み印刷は、スプレッドシートからデータを取得し、htmlに変換してから複数の人にメールする必要があるため、問題の解決には役立ちません。 – Hosangja

+0

HTMLデータをスクリプト内でフォーマットするか、セル内のシートの2番目のタブまたは式を使用してフォーマットする必要があります。したがって、テーブルにデータを表示する場合は、コード内の文字列として、または別のタブにテーブルを作成し、データの置換ポイント「プレースホルダ」を作成します。次に、マージコードを使用してプレースホルダを置き換えます。 –

関連する問題