ecoslymeです。
最近流行りのRPA(Robotics Process Automation)。
特に日本ではWinActorという、NTTデータが提供しているRPAロボットが非常に高いシェアを占めています。
その中で課題となっているのが、Outlookでメールを受信したらWinActorを起動して欲しいというもの。
Webでヒントを探しても見つからず、現状としては1時間ごとにWinActorを起動してメールを見に行って、該当案件がなければ終了というものです。
そこで、私が考えた「メールの受信をトリガーにして、WinActorを起動させる方法」をご紹介します。
WinActorの場合、ショートカット起動という事ができます。
ショートカットを作成し、そのショートカットアイコンをダブルクリックすると、WinActorが起動してくれるというものです。
今回紹介する機能は、そのショートカットを起動するというものです。
ショートカットに限らず、特定のシステムを起動させるという事も可能です。
もちろんWinActorに限らず、様々な場面で活躍できるものではないかと考えています。
WinActorについて更に知りたい方は、参考書が出版されていますので購入されてみてはいかがでしょうか。理解が倍速で早まります。
それでは早速設定方法をご紹介します。
複数のステップで紹介します。
Outlookの仕分けルールに「アプリケーションを開始する」、「スクリプトを実行する」を追加
まず最初のステップとして、Outlookの仕分けルール(自動仕分けウィザード)に「アプリケーションを開始する」、「スクリプトを実行する」を追加します。
1. Windows の [スタート] ボタンをクリック後に “regedit” と入力し、検索結果の regedit をクリックします。
2. 以下のキーを登録します。
キー | HKEY_CURRENT_USER\Software\Microsoft\Office\xx.0\Outlook\Security |
名前 | EnableUnsafeClientMailRules |
種類 | REG_DWORD |
値 | 1 (有効) |
※レジストリ キーのパス中にある xx は以下の通りです。
- Outlook 2010 の場合 : 14
- Outlook 2013 の場合 : 15
- Outlook 2016、2019、Office365 の場合 : 16
<手順>
- レジストリエディタの赤枠部分に”キー”を入力してEnter
※”xx“の部分は上の2桁の数字を入力
- 現れたフォルダ内で右クリック
- 「新規」⇒「DWORD(32ビット)値(D)」を選択
- ファイル名を「EnableUnsafeClientMailRules」とする
- 作成したファイルを右クリックして、「修正」を選択
- 値のデータを「1」にしてOK
- Outlookを起動していたらOutlookの再起動を行う
これが完了すれば、Outlookの仕分けルールに新たに、「アプリケーションを開始する」、「スクリプトを実行する」が追加されています。
Outlookでマクロの作成
次に、Outlookでマクロを作成します。
マクロなんて知らないよ、という人でも分かるように説明しますので、手順通りにやって頂ければ問題ありません。
- Outlookの「ファイル」から、「オプション」をクリック
- 「リボンのユーザー設定」で「開発」にチェックマーク(☑)を付けてOK
- 「開発」タブが作成されたことを確認する
- Outlookの画面で「Alt+F11」を入力するか、開発タブで「Visual Basic」をクリックする
- VBAの画面が立ち上がるので、挿入タブから「標準モジュール」を選択
- 以下のマクロを入力する(コピペでOK)
※”Test”の部分に好きな名前を入力する(後に”スクリプト”として選択する)
Sub Test(MyMail As mailItem)
CreateObject(“Shell.Application”).NameSpace(0&).ParseName _
(“この赤字の部分に、起動させたいショートカットファイルの「パスのコピー」を入力する”).InvokeVerb
End Sub
以下のようになるはずです。
下の例では、既にショートカットのパスを入力した状態になっています。
複数のWinActorの起動を行いたい場合は、同様にして複数のマクロを作成していけばOKです。
【参考】パスのコピー
パスのコピーという事をご存知ない方もいると思うので、簡単にご紹介します。
- ショートカットファイル(アイコン)の上で「Shift + 右クリック」
- 「パスのコピー」を選択すれば、上記の「” ~~~~~ ”」の部分がコピーされている
Outlookで自動仕分けルールを作成する
次のステップでは、Outlookで自動仕分けルールを作成します。
これは、日々の業務でも非常に使える機能なので、必ず覚えて下さい。
- Outlookの「ファイル」から、「仕分けルールと通知」を選択
- 「新しい仕分けルール」をクリック
- 「懸命に特定の文字が含まれるメッセージをフォルダーに移動する」を選択し、次へ
今回は”件名”をトリガーにしていますが、”人”をトリガーにする事も可能です
- 画面下部の「特定の文字」(青字)をクリック
- 文字の指定で、件名を入力して「追加」後にOKをクリック
- 次へをクリック
- 「指定フォルダーへ移動する」のチェックを解除して、「スクリプトを実行する」にチェックを入れる
- 画面下部の「スクリプト」(青字)をクリック
今回は”スクリプト“にしていますが、”アプリケーション“を選択すれば、特定のアプリを起動するという事ができます
- 先程作成したマクロを選択して、OK
- 完了する
- 以降、注意関係のポップアップはOKをクリックしていく
以上の設定を行えば、メール受信をトリガーにして、特定のアプリを起動したり、ショートカットファイルを起動する事ができます。
Outlookでスクリプトが実行されない場合
Outlookでスクリプトが実行されない場合があります。
つまり、メールを受信してもWinActorが起動してくれない場合があります。
その際には、Outlookの「ファイル」からメールプロファイルを一度ログアウトしてから、再度Outlookを開いて下さい。
そうすれば、スクリプトがうまく起動する場合があります。
ログインする際には、プロファイルの選択画面が出てきますので、適切なプロファイルを選択して下さい。
問題点
ここで、一つ問題点があります。
短い間隔で何回もメールがくると、WinActorが起動してくれません。
WinActorの起動中に次のタスクが回ってくると、重複してしまうためWinActorが止まってしまうか、次のタスクが実行されません。
そのためメールは一旦誰かのPCで貯めておき、頃合いを見計らってWinActorのPCへ転送するという運用も考えられます。
(そうなると自動化の意味が薄まってしまう可能性もありますが、、、)
もしくはここでは紹介はしませんが、RPAで1時間に1回メールBoxを見に行き、案件があればWinActorを実行するというシナリオを作成する方法もあります。
RPAエンジニアへの転職について
RPAエンジニアへの転職についてご興味がある方は、以下の記事をご覧下さい。
IT業界未経験でも事務作業の業務知識を持っている方が、RPAエンジニアとして転職する例は少なくありません。
IT業界にしかいない人よりも事務作業の業務フローの理解度が高く、本質的な事務作業の効率化方法を分かっているため、市場価値が高いと考えられます。
自分の市場価値をこの機会に調べてみませんか?
ecoslymeです。 最近急激に注目され始めているRPA(ロボティクス・プロセス・オートメーション)。 IT業界でもその地位は上がってきているのではないでしょうか。 […]
最後に
いかがでしたでしょうか。
実は結構便利な機能です。
ある特定のメールを受信したら特定の行動を行う、という事を自動的に行えるようになるので、日々の業務を削減できる可能性を秘めています。
お客さんからメールを受信したら受発注システムを起動させる、というようにすれば注文忘れがなくなるという備忘にもなります。
是非この記事を参考に、他の便利なコマンド実行を実践していって頂ければと思います。
また、RPAと相性の良い日付関係の一覧表についてもまとめていますので、こちらの記事も是非ご覧下さい。
ecoslymeです。 日々の業務の中で、エクセル(Excel)を使用して日付関係の数式が欲しいという事はありませんか? エクセルを開いたら、本日の日付や昨日の日付、昨年度の日付が自動的に[…]
RPAを初めて間もない会社(人)は、以下の記事もご覧頂ければと思います。
ecoslymeです。 RPA(Robotics Process Automation)の中で、一番の国内シェアを占めるのはNTTデータが提供しているRPAロボット、WinActorです。この記事では、その[…]