業務で頻繁に利用する「メール送信」を自動化する方法を解説します。今回使用するのは、Microsoft社Power Automateです。Windows 10以降ユーザーは標準で利用できるツールなので、多くの方に役立つでしょう。
併せて、Power Automateの概要やメリットについても解説します。
そもそもPower Automateとは
Power Automateは、Microsoft社が提供するワークフロー自動化ツールです。ワークフロー自動化ツールは「RPAツール」とも呼ばれ、Power Automateには以下の4つの機能があります。
- Microsoft Flow
- UI Flow
- WinAutomation
- AI Builder
Power Automateの元は、Microsoft FlowとUI Flowです。Microsoft Flowでは、アプリケーション同士を連携して自動化フローを作成します。例えば、毎日決まった時間にメールを送信したり、SharePointが更新されたら通知したりするなど、さまざまな作業を自動化できます。トリガーとして日時や更新を設定できるだけでなく、他のアプリケーションの動作をトリガーとして自動化フローを実行することも可能です。
一方でUI Flowは、端末上で作業の自動化を行うための機能です。デスクトップアプリケーションとの連携が可能なので、ローカルとWeb上で相互に関連した自動化フローを作成できます。
またPower Automateでは、AIを使用した自動化ができる「AI Builder」の利用も可能です。画像を認識して情報を抜き出すなど、AIにしかできない処理の自動化フローを作成できるツールです。
自動化フローの作成ではテンプレートが用意されているので、コードを使用しなくても簡単にフローを作成できるようになっています。また2020年5月にWinAutomationを開発するSoftomotive社をMicrosoft社が買収したことで、人がPC上で行った動作を記録するレコーダー機能を利用できるようになりました。
Power Automateでメールを一括送信する方法
複数のメールアドレスと名前を取得して、自動で一斉送信する方法を解説します。今回は、取得データ先としてExcelを指定するため、あらかじめ送信先の名前やメールアドレスが入力されたテーブルを用意してください。
自動化フローは、以下の手順で作成します。
まず、新規フローを作成して「インスタントクラウドフロー」を選択してください。これは手動トリガーとなります。設定するアクションは以下のとおりです。
- 「表内に存在する行を一覧表示」
- 「変数を初期化する」
- 「Apply to each」
- 「メールの送信」
「表内に存在する行を一覧表示」で、メールアドレスを抽出するExcelファイルを指定します。Excelの「場所」と「ファイル名」、メールアドレスのある「テーブル名」を入力してください。この時に指定するテーブル名は、Excelのメニューにある「テーブルデザイン」で設定した名前です。
次に、取得する文字列変数を初期化します。任意の名前を付けて、種類を「文字列」に、値を「空白(入力しない)」に設定してください。値は、次の工程で代入します。
Apply to eachでは、Valueを選択して名前と値を入力します。名前は「任意のもの」を打ち込み、値の欄に取得する「アドレス」を指定して、アドレスの後に「;」を入力します。そうすることで「〇〇@gmaill.com;〇〇2gmail.com;〇〇3@gmail.com」というように、複数のメールアドレスを1つの文字列として扱うことができます。
最後に、メール送信のアクションで作成した変数を宛先に挿入します。任意で「件名」と「本文」を入力すれば、完了です。
メールの差出人を変更する方法
上記の方法では、差出人が自分になってしまいます。通常は問題ありませんが、業務で使用する場合は差出人を変更したほうがよいケースもあるでしょう。そこで、差出人を変更する方法を2つ紹介します。
1つ目は、Exchange Onlineの共有メールボックスを差出人として指定する方法です。差出人を共有メールボックスにすれば、業務全体で利用するメールアドレスから送信した形になります。設定方法は、「メール送信」アクションを「共有メールボックスからメールを送信する」アクションに変更するだけです。
2つ目は、差出人を他のユーザーに変更する方法です。この場合は他のユーザーの名前を借りることになるため、「アクセス許可の変更」が必要です。管理者権限を有するアカウントで、Microsoft365管理センターにログインしてください。
「ユーザー」の「アクティブなユーザー」から名前を借りるユーザーを選択して、メールタブから「メールボックス所有者として送信するアクセス許可」をクリックしてください。そして、「アクセス許可を追加」から自動化フローを実行するユーザーを選択します。
これで、他のユーザーの名前を借りる準備が整いました。前述のメール一括送信フローの「メール送信」アクションで、差出人を他のユーザーに設定します。設定に問題がないか確認するために、テストを行ってください。エラーが出ず、適切にメールが送信されたらテストは成功です。
その他Power Automateで実現する業務効率化
Power Automateは単独で利用することもできますが、データ収集・分析プラットフォームのPower Platformの機能の一つでもあります。Power Platformには「PowerApps」「Power Automate」「Power BI」「Power Virtual Agents」の機能が備わっており、低コストで業務の効率化を図れます。
ここではPower Platformに含まれるPower Automateが、どのように業務を効率化するのか見てみましょう。
データの一元管理
Power Platformの最大のメリットは、システム連携にあります。「Power BIとPower Automate」「Power AutomateとPower Virtual Agents」など、各システムを連携することで機能を拡張できます。
さまざまなシステムがある場合、データの取り扱いがそれぞれ異なるケースが多いのですが、Power Platformではシステム同士を連携することでデータを一元管理することができます。これによって各システムを最大限に活かした開発ができるため、より幅広いシステムを構築できます。
また、システム連携ではコードを記述する必要がなく、簡単に組み込むことが可能です。プログラミングの知識がなくても利用できるため、ITに明るくない担当者でもある程度のシステムを構築できることもメリットといえます。
ワークフローの自動化やデータの収集・分析、チャットボットの作成など、さまざまな機能を簡単に作成できるため、企業におけるDXの推進にも役立つでしょう。
開発コストの削減
システム開発には、開発費や導入費用などのコストがかかります。また導入には時間もかかり、それに伴って人的コストも発生します。
一方でPower Platformはクラウドサービスなので、すぐに使用できるというメリットがあります。導入コストもリーズナブルなので、導入のハードルは低いといえるでしょう。
前述のとおり、Power Platformではプログラミングの知識がない方でも、簡単にシステムを開発ができるように作られています。
ドラッグ&ドロップでのシステム構築やテンプレートの利用など、ノーコードでの開発が可能です。開発コストを抑えられるので、自社で新しいシステムを開発することもできます。もちろんプラグラミングの知識があれば、より高度なシステム構築が可能です。システム構築を外部に委託する必要がないことは、大きなメリットといえるでしょう。
まとめ
今回はPower Automateの「メールを送信する」アクションを使用して、メールの一括送信を自動化する方法について解説しました。Power Automateでは本文に入れる内容を毎回抽出したり、Excelで抽出するアドレスを任意で変更したりすることもできます。
自社の業務内容に合わせて、最適な自動化フローを作成してください。