てんこ製作

Tenco Works

Power Automateで到着メールをSharePointリストに台帳化

2023年てんこの冬休みの宿題。到着メールをPower Automateを使ってSharePointリスト化するお話です。

前置き

会社でのお話。

メールがたくさん飛んできて、それを台帳に記入して、メールが届いたあとの処理の進捗を台帳で管理してる業務があります。

そういった業務は複数あって、それぞれ異なる項目で台帳を作っていたりします。

しかも台帳はExcelで、記入は手動だったりします。

今回は、SharePointリストを台帳として利用して、Power Automateで最初の記入をするところまでを自動化してみます。

用意するもの

  • 台帳となるSharePointリスト
  • メールが届いたらリストにアイテムを作成するPower Automate フロー
  • メールの本文から台帳記入に必要な情報を抜き出すOfficeスクリプト付きExcelファイル

SharePointリスト

管理番号とか種別は今回の対象業務固有の話なので、他の業務に応用するときはまた別の項目になる可能性大。

メールの台帳なので、いつ、誰から来たかくらいはあったほうがいいのかなという程度で、基本的には業務に必要な項目でリストを作成します。

名前 種類
ID デフォルト
Created デフォルト
件名 メール件名
送信者 メールの送信者
本文 本文
管理番号 本文に記載される案件の管理番号(業務固有)
種別 本文に記載される案件の種別(業務固有)

Officeスクリプト

Power Automateのフローを作成する前にOfficeスクリプトを用意します。

function main(workbook: ExcelScript.Workbook, bodyText: string)
{
    // Your code here
    let body = bodyText;
    // 引用元を検出できたら削除
    body = deleteQuoteFromBody(body);
    // 本文から受付情報抽出
    let rtn = extractReceiptInfo(body)

    return {
      "snum": rtn[0],
      "skind": rtn[1]
    };    
}

function deleteQuoteFromBody(tbody: string): string {
  //メール本文から引用元の本文を削除する
  let rtn: string;
  const regex = /-+Original Message-+/;
  if (regex.test(tbody) == true) {
    let splited = tbody.split(regex);
    rtn = splited[0];
  }
  else {
    rtn = tbody;
  }
  return rtn;
}

function extractReceiptInfo(tbody: string): string[] {
    let rtn: string[] = [];
    //本文から管理番号を抽出する
    const regex_snum = /管理番号:(\d\d\d\d-\d\d)/;
    let snum = tbody.match(regex_snum);
    if (snum == null) {
        rtn.push("");
    }
    else {
        rtn.push(snum[1]);
    }
    //本文から種別を抽出する
    const regex_kind = /種別:(.+)$/m;
    let kind = tbody.match(regex_kind);
    if (kind == null) {
        rtn.push("");
    }
    else {
        rtn.push(kind[1]);
    }
    return rtn;
}

このスクリプトは、メール本文から必要な情報(今回は管理番号と種別)を抽出するために用意しています。

説明は省いてますが、SharePointドキュメントライブラリ上にExcelファイルを用意して、ブラウザでExcelファイルを開いた上でOfficeスクリプトを作成しています。

Power Automateフロー

Officeスクリプトの用意ができたら、最後にPower Automateフローを作成します。

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">
新しいメールが届いたとき(V3)
新しいメールが届いたとき(V3)
Htmlからテキスト(プレビュー)
Htmlからテキスト(プレビュー)
スクリプトの実行
スクリプトの実行
プロパティ
フォルダー
フォルダー
Inbox
Inbox
プロパティ
コンテンツ
コンテンツ
本文
本文
プロパティ
場所
場所
OneDrive、SharePointサイト
OneDrive、SharePointサイト
ドキュメント
ライブラリ
ドキュメント ライブラリ
SharePointを選んだ場合のドキュメントライブラリ
SharePointを選んだ場合のドキュメントライブラリ
ファイル
ファイル
Excelファイル名
Excelファイル名
スクリプト
スクリプト
実行するOfficeスクリプト名
実行するOfficeスクリプト名
bodyText
bodyText
Officeスクリプトに渡す引数
Officeスクリプトに渡す引数
項目の作成
項目の作成
プロパティ
場所
場所
OneDrive、SharePointサイト
OneDrive、SharePointサイト
ドキュメント
ライブラリ
ドキュメント ライブラリ
SharePointを選んだ場合のドキュメントライブラリ
SharePointを選んだ場合のドキュメントライブラリ
ファイル
ファイル
Excelファイル名
Excelファイル名
スクリプト
スクリプト
実行するOfficeスクリプト名
実行するOfficeスクリプト名
bodyText
bodyText
Officeスクリプトに渡す引数
Officeスクリプトに渡す引数
Text is not SVG - cannot display

このフローは、フローを作成する時に指定したアカウントのメールボックス内「Inbox」にメールが届くと動くようになります。

実際には他にもメールがたくさん届くので、Outlook上で振り分けをしておいて該当のメールだけ特定のフォルダに入れるようにして、そのフォルダーを対象にするのが無難かなと思います。

メールがプレーンテキストかHTML形式かわからないので、念の為HTMLからテキストに変換するコネクターを使用しています。この機能は現時点でプレビュー版のようです。

ポイント

Officeスクリプトの引数

Officeスクリプトを最初に作成したときは、次のようになってるはずです。

function main(workbook: ExcelScript.Workbook) {
    // Your code here
}

で、今回はこれに引数を一つ付け足してます。

function main(workbook: ExcelScript.Workbook, bodyText: string)
{
    // 中略   
}

こう書いておくと、Power Automateフローでこのスクリプトを指定したときに、bodyTextに何のデータを渡すかを指定できるようになります。

フローより先にOfficeスクリプトを作成しておく理由の一つはこれです。

Officeスクリプトの戻り値

今回Officeスクリプトにメールの本文を渡して、その中から管理番号と種別を抜き出してもらうという処理をさせようと思います。

メールの本文は引数として渡すとして、戻り値には管理番号と種別の2つの値を返して貰う必要があります。

2つの値を返すために、戻り値はオブジェクトの形にしてあります。

    return {
      "snum": rtn[0],
      "skind": rtn[1]
    };

こう書いておくと、Power Automateフローでこのスクリプトを指定したときに、スクリプト実行後のステップで処理結果のsnumとskindを使用することができるようになります。

参考にさせていただいた記事

vicugna-pacos.github.io