Google Apps ScriptでGoogle Spreadsheetの内容をCSVファイルにして添付ファイルでメールを送る
Google Apps ScriptでGoogle SpreadSheet(スプレッドシート)の内容をCSVファイルにして添付ファイルでメールを送るのを作りました。
A1から内容が書かれているの限定ですが、調整することもできるんじゃないかと思います。
以前に書いた「Google Apps Scriptでcronみたいに定期的な処理でメールを送る」と組み合わせると、定期的にGoogle SpreadSheet(スプレッドシート)の内容をメールで送ることができると思います。
ソース
function attachmentsToCsvFile() { var csvFileName = 'test.csv'; var ss = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('all'); var maxColumn = ss.getLastColumn(); var maxRow = ss.getLastRow(); var data = ss.getRange(1,1,maxRow,maxColumn).getValues(); if (data.length > 1) { var csv = ""; for (var row = 0; row < data.length; row++) { for (var col = 0; col < data[row].length; col++) { if (data[row][col].toString().indexOf(",") != -1) { data[row][col] = "\"" + data[row][col] + "\""; } } if (row < data.length-1) { csv += data[row].join(",") + "\r\n"; } else { csv += data[row]; } } csvFile = csv; } var attachments = [{fileName:csvFileName, mimeType:'text/comma-separated-values', content: csvFile}]; MailApp.sendEmail("xxxxx@gmail.com", "CSV file", "CSV file", {attachments:attachments}); }