前提・実現したいこと
GASでフォルダに新しいファイルが作成されたら自動的にメールを飛ばしたい。
発生している問題・エラーメッセージ
エラーは出ていないのだが、機能していない。
該当のソースコード
function sendMail() { var folder = DriveApp.getFolderById("該当フォルダのID"); var files = folder.getFiles(); var ss = SpreadsheetApp.openById("該当ファイルのID"); var sheet = ss.setActiveSheet(ss.getSheets()[0]);//シートを指定したい var i = sheet.getLastRow(); var lastCreatedMap = sheet.getRange('O2:O100').getValues(); //既にフォルダにあるかどうかのマッチング while(files.hasNext()){ var file = files.next(); var fileId = file.getId(); var hasFileId = lastCreatedMap.some(function(value){ return value[0] === fileId; }); if(!hasFileId){ i++ var to1 = '送信先メールアドレス'; var sub = '【新規作成】' + file.getFileName()[i]; var url = file.getUrl()[i]; var body = '新規プロジェクトが作成されました。\n' + url; GmailApp.sendEmail(to1, sub, body); } } }
回答1件
あなたの回答
tips
プレビュー