Gmailの添付ファイルをまとめてGoogleDriveのフォルダに移したいと考えており、
以下のコードを実行してみましたが、一部の添付ファイルしか移動できませんでした。
・Gmailのメールはチェーンメールで、複数のメールに添付ファイルがついています。
・Gmailにラベルを作成し、このラベル内にあるメールの添付ファイルをまとめて移せるようにしました。
チェーンメールの場合、やはり難しいのでしょうか。
いい方法がありましたら教えていただけますと幸いです。
function gmailtodriveFileUploader() {
//変数準備
var target_folder = DriveApp.getFolderById('16Y_NLLZGcgeVFoiDe7bQXsi8NnmiAiNU');
var query_condition = "label:gmailtodrive";
//処理対象メール取得
var threads = GmailApp.search(query_condition);
var messages = GmailApp.getMessagesForThreads(threads);
if(messages.length > 0){
for(var i = 0; i < messages.length; i++) { for(var j = 0; j < messages[i].length; j++) { var attach = messages[i][j].getAttachments(); for(var k = 0; k < attach.length; k++){ target_folder.createFile(attach[k]); } } var label1 = GmailApp.getUserLabelByName('gmailtodrive'); var label2 = GmailApp.getUserLabelByName('gmailtodrive'); threads[i].removeLabel(label1); threads[i].addLabel(label2); }
}
}
あなたの回答
tips
プレビュー