GAS G-mail→スプレッドシートへの転記方法
登録フォームより下記の本文中から以下の情報を抽出し、
スプレッドシートへ転記したいのですが全く動作しません...
拾いのコードで作成中ですが、誰かご教示いただけませんでしょうか?
・uid
・お名前
・電話番号
・広告コード
・顧客コード
【REMOTE_HOST】: テスト
【REMOTE_ADDR】: テスト
【USER_AGENT 】: テスト
【HTTPREFERER】: テスト
【 uid 】: テスト
【お名前】: テスト太郎
【電話番号】: 08012341234
【広告コード】: テスト
【顧客コード】: テスト
【th_f】: テスト
【site_id】: テスト
【email】: 123456@exampl.com
(受付日時:2022/08/24 14:19:33 )
function myFunction(){ // 抽出条件指定 let query = 'subject:【登録通知】登録フォーム'; //問合せごとの情報が要素になった二次元配列を取得 let gmail = getGmail(query); // 書き込むシートを取得、アクティブシートを取得しているが任意のシートでOK let sheet = SpreadsheetApp.getActive().getActiveSheet(); //要素ごとにappendRowメソッドを呼び出して最終行に書き込む繰り返し処理を実行 gmail.forEach(info => sheet.appendRow(info)); } function getGmail(query) { //Gmail取得ここから //Gmailの履歴からマッチするメールを一覧化 var threads = GmailApp.search('subject:【登録通知】登録フォーム'); let gmailInfo = []; let array = []; //一覧化したメールの件数分繰り返し threads.forEach(function(thread) { // スレッド内のメール一覧を取得 let messages = thread.getMessages(); // メールを一つずつ取り出す messages.forEach(function(message) { // メール本文 let plainBody = message.getPlainBody(); // Logger.log(plainBody); // uid let uid = plainBody.match(/【 uid 】:(.*)/); // Logger.log(uid); // お名前 let name = plainBody.match(/お名前】:(.*)/); // Logger.log(name); // 電話番号 let tel = plainBody.match(/【電話番号】:(.*)/); // Logger.log(tel); // 広告コード let fld1 = plainBody.match(/【広告コード】:(.*)/); // Logger.log(fld1); // 顧客コード let fld2 = plainBody.match(/【顧客コード】:(.*)/); // Logger.log(fld2); //各メール情報を組みとした二次元配列として格納 gmailInfo.push([uid[1],name[1],tel[1],fld1[1],fld2[1]]); }); }); return(gmailInfo); }

バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2022/09/01 03:43