前提・実現したいこと
google Apps Scriptlで、gmailに受信した特定のメールをリスト化したいです。
色んなサイトを検索し、以下で上手くいきそうなのですが、2つ追加したい項目があります。
1,受信したメールのタイトル(subject)
2,受信したメールの送信元(from)
どこにどのように記載したらよいのか分からないので教えてください。
また、[項目:品名]がブランクのものがあるためエラーが返ってきます。
エラーになるのではなく、書かれていなければ空白を返すにはどこかに構文を足せばよいですか?
よろしくお願いします。
### 該当のソースコード var sheet = SpreadsheetApp.getActiveSheet(); var data = sheet.getRange(7, 21, sheet.getLastRow() + 1).getValues(); function getMail01(){ var objSpreadsheet = SpreadsheetApp.getActiveSpreadsheet(); // Gmailのラベル名をここに記載 var threads = GmailApp.search('label:任意のラベル名 is:unread',start,max); // メールから日時、ご注文番号、品名、印刷部数を取り出す// for(var i = 0; i < Messages.length; i++) { for(var j = 0; j < Messages[i].length; j++) { var id = Messages[i][j].getId(); if(!hasId(id)){ var body = Messages[i][j].getPlainBody(); var date = threads[i].getMessages()[j].getDate(); var regNumber = new RegExp('ご注文番号 :' + '.*?' + '\r'); var Number = body.match(regNumber)[0].replace('ご注文番号 :', '').replace('\r', ''); var regName = new RegExp('品名 :' + '.*?' + '\r' ); var Name = body.match(regName)[0].replace('品名 :', '').replace('\r', ''); var regBusu = new RegExp('印刷部数 :' + '.*?' + '\r' ); var Busu = body.match(regBusu)[0].replace('印刷部数 :', '').replace('\r', ''); // それぞれの項目をセルを指定してスプレッドシートへ転記 sheet.getRange(row,1).setValue(date); sheet.getRange(row,2).setValue([Number]); sheet.getRange(row,4).setValue([Name]); sheet.getRange(row,8).setValue([Busu]); row++ ```ここに言語名を入力 JAVA script
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/06/25 11:54
2021/06/25 12:32