GoogleドライブにあるPDF添付ファイルをスプレッドシートから送信したい。
私が使用しているコードは次のとおりです。
function sendEmails() {
var sheet = SpreadsheetApp.getActiveSheet();
var startRow = 2; // First row of data to process
var numRows = 8; // Number of rows to process
// Fetch the range of cells A2:B3
var dataRange = sheet.getRange(startRow, 1, numRows, 2)
// Fetch values for each row in the Range.
var file = DriveApp.getFilesByName('ScriptCarPass.pdf')
var data = dataRange.getValues();
for (i in data) {
var row = data[i];
var emailAddress = row[0]; // First column
var message = row[1]; // Second column
var subject = "Sending emails from a Spreadsheet";
MailApp.sendEmail(emailAddress, subject, message, {attachments: file});
}
}
添付ファイルを除くすべてが正常に動作します-つまり、添付ファイルなしで実行すると正常に動作します。
エラーInvalid argument: inlineImages
が表示され続ける
私も試しました:
attachments: [file.getAs(MimeType.PDF)]
ただし、.getAs
が認識されないというエラーが発生します。
DriveApp.getFilesByName()は file iterator を返します。したがって、sendMail()引数をわずかに変更する必要があります。
MailApp.sendEmail(emailAddress, subject, message,
{attachments: file.next().getBlob()}
);