質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
Google Apps Script

Google Apps ScriptはGoogleの製品と第三者のサービスでタスクを自動化するためのJavaScriptのクラウドのスクリプト言語です。

Q&A

0回答

253閲覧

GAS GMAILから一つ下の行の値を抽出できません。

diabolos826

総合スコア1

Google Apps Script

Google Apps ScriptはGoogleの製品と第三者のサービスでタスクを自動化するためのJavaScriptのクラウドのスクリプト言語です。

0グッド

0クリップ

投稿2023/02/19 22:57

実現したいこと

はじめまして。
当方知識が無いため色々調べ、コードを書いてみたのですがどうしても
キーワードの一つ下の行の情報を抽出できません。
どなたか知恵をお貸しいただけないでしょうか?

前提

以下のようなメールから、■お名前の一つ下の行の情報(様を抜きたい)を
自動でスプレッドシートに項目ごとに抽出したいと思っております。

発生している問題・エラーメッセージ

該当のソースコード

function searchContactMail() {

const title = 'subject:【フォームズ】';
// const start = 0;
// const max = 10;
const threads = GmailApp.search(title);
const messagesForThreads = GmailApp.getMessagesForThreads(threads);
const values = [];
const sheet = SpreadsheetApp.getActiveSheet();
const lastRow = sheet.getLastRow();

for(const messages of messagesForThreads){
const message = messages[0];
var plainBody = message.getPlainBody();
Logger.log(plainBody);
const record = [
message.getId(),
plainBody.match(/■お名前(.)/)[0].replace('■お名前', '').replace('■お名前(フリガナ)', '').replace('様', ''),
plainBody.match(/■お名前(フリガナ)(.)/),
plainBody.match(/■ご住所※全角25文字以内(半角不可)(.)/),
plainBody.match(/[郵便番号] : (.)/)[0].replace('[郵便番号] : 〒', '').replace('r', '') ,
plainBody.match(/[都道府県] : (.
)/)[0].replace('[都道府県] :', '').replace('r', '') ,
plainBody.match(/[市区町村] : (.)/)[0].replace('[市区町村] :', '').replace('r', '') ,
plainBody.match(/[町名番地] : (.
)/)[0].replace('[町名番地] :', '').replace('r', '') ,
plainBody.match(/[建物名] : (.)/)[0].replace('[建物名] :', '').replace('r', '') ,
plainBody.match(/電話番号区分1(.)/),
plainBody.match(/■連絡(.
)/),

];
values.push(record);
Logger.log(record);
}

if(values.length > 0){
sheet.getRange(lastRow + 1, 1, values.length, values[0].length).setValues(values);
}

  const label = GmailApp.getUserLabelByName('処理済み');
threads.forEach(thread => thread.addLabel(label));

補足情報(FW/ツールのバージョンなど)

抽出したい情報は、
■お名前の一つ下の行の情報(様を抜きたい)
■お名前(フリガナ)の一つ下の行の情報(様を抜きたい)
■電話番号区分1の一つ下の行の情報
■連絡の一つ下の行の情報
を横並びにセルに抽出し自動で追加されていくようにしたいと考えております。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

meg_

2023/02/20 00:02

コードは「コードの挿入」で記入してください。(インデントが判るようにお願いします)
YellowGreen

2023/03/09 07:12

実際のメールの見本を可能は範囲でお示しいただけますか? その方が回答が付きやすいと思います。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだ回答がついていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問