添付されたファイルを自動でドライブ上に保存したい
最近では電子化の波で、給与明細などもPDFで送られてきたりします。
プロジェクトでやり取りしているファイルも、なんだかんだ保存しないで都度メールを探して確認すると
余計な時間が掛かってしまう……
ということで、自動で添付ファイルをドライブに保存してしまう関数です。
GASで時限起動させれば、定期的に保存されるのでメールに埋もれる心配もありません。
コピペで使えるメールの添付ファイルをドライブに保存する関数
function getAttachements(){
// 添付ファイルを格納するドライブ上のフォルダを指定
var FOLDER_ID = 'XXXXXXXXXXXXXXXX';
// 添付ファイルを読み込む対象のメールを特定できるラベルを指定
var SEARCH_TERM = 'label:ラベル名 ';
// 保存先フォルダを取得
var targetFolder = DriveApp.getFolderById(FOLDER_ID);
// Gmeilをラベルで検索する(500件)
var searchMailResult = GmailApp.search(SEARCH_TERM, 0, 500);
// Gmeilをラベルで検索する(500件)
var targetMail = GmailApp.getMessagesForThreads(searchMailResult);
for(var mailIdx in targetMail){
for(var threadIdx in targetMail[mailIdx]){
// 添付ファイルを取得する
var attachments = targetMail[mailIdx][threadIdx].getAttachments();
for(var fileIdx in attachments){
// 添付されたファイル(1通に複数添付されていても)をドライブ上のフォルダに格納
targetFolder.createFile(attachments[fileIdx]);
}
}
}
}