前提・実現したいこと
①特定の件名のメール文章の項目を抜き出してスプレッドシートに入力
②タグをつけて次回以降の取り込みには入力されないようにしたいです。
発生している問題・エラーメッセージ
エラーメッセージはでないのですが、C列以降(会社名)の項目が入力されません。
どのようにしたら会社名以降も抽出ができますでしょうか。
よろしくお願いいたします。
該当のソースコード
function getMail() { var label = "問い合わせ"; var start = 0; var max = 100; return GmailApp.search('label:' + label, +start, max); } function myFunction() { // 検索条件に該当するスレッド一覧を取得 var threads = GmailApp.search('subject:お問い合せ -label:対応済み'); // スレッドを一つずつ取り出す threads.forEach(function(thread) { // スレッド内のメール一覧を取得 var messages = thread.getMessages(); // メールを一つずつ取り出す messages.forEach(function(message) { var date = message.getDate(); // メール本文を取得 var plainBody = message.getPlainBody(); // 会社名を取り出す var company = plainBody.match(/会社名: (.*)/); // 氏名を取り出す var name = plainBody.match(/氏名: (.*)/); // メールアドレスを取り出す var email = plainBody.match(/メールアドレス: (.*)/); // 電話番号を取り出す var tel = plainBody.match(/電話番号: (.*)/); // 内容を取り出す var context = plainBody.match(/内容: (.*)/); // 書き込むシートを取得 var sheet = SpreadsheetApp.getActive().getSheetByName('お問い合わせ'); // 最終行を取得 var lastRow = sheet.getLastRow() + 1; // セルを取得して値を転記 sheet.getRange(lastRow, 2).setValue(date); sheet.getRange(lastRow, 3).setValue(company); sheet.getRange(lastRow, 4).setValue(name); sheet.getRange(lastRow, 5).setValue(email); sheet.getRange(lastRow, 6).setValue(tel); sheet.getRange(lastRow, 7).setValue(context); }); // スレッドに処理済みラベルを付ける var label = GmailApp.getUserLabelByName('対応済み'); thread.addLabel(label); }); }
function getMail() { var label = "問い合わせ"; var start = 0; var max = 100; return GmailApp.search('label:' + label, +start, max); } function myFunction() { // 検索条件に該当するスレッド一覧を取得 var threads = GmailApp.search('subject:お問い合せ -label:対応済み'); // スレッドを一つずつ取り出す threads.forEach(function(thread) { // スレッド内のメール一覧を取得 var messages = thread.getMessages(); // メールを一つずつ取り出す messages.forEach(function(message) { var date = message.getDate(); // メール本文を取得 var plainBody = message.getPlainBody(); // 会社名を取り出す var company = plainBody.match(/会社名: (.*)/); // 氏名を取り出す var name = plainBody.match(/氏名: (.*)/); // メールアドレスを取り出す var email = plainBody.match(/メールアドレス: (.*)/); // 電話番号を取り出す var tel = plainBody.match(/電話番号: (.*)/); // 内容を取り出す var context = plainBody.match(/内容: (.*)/); // 書き込むシートを取得 var sheet = SpreadsheetApp.getActive().getSheetByName('お問い合わせ'); // 最終行を取得 var lastRow = sheet.getLastRow() + 1; // セルを取得して値を転記 sheet.getRange(lastRow, 2).setValue(date); sheet.getRange(lastRow, 3).setValue(company); sheet.getRange(lastRow, 4).setValue(name); sheet.getRange(lastRow, 5).setValue(email); sheet.getRange(lastRow, 6).setValue(tel); sheet.getRange(lastRow, 7).setValue(context); }); // スレッドに処理済みラベルを付ける var label = GmailApp.getUserLabelByName('対応済み'); thread.addLabel(label); }); }
こちらはメール本文です XXXXXXXXXXXXX様より、 下記お問い合せが届いています。 ==詳細=============== 会社名: XXXXXXXXXXX 氏名: XXXXXXx メールアドレス: XXXXXXXXXXXX 電話番号: XXXXXXXXXXXX 内容: XXXXXXXXXXXXxx ====================
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。