前回はフリーの RPA ツールのPulover’s Macro Cretorを使ってウィンドウの待機とIf文での条件分岐を実現しました。なぜ条件分岐が必要だったかというと、名前を付けて保存の確認ダイアログが表示されたり、されなかったりするからでした。
今回は、 RPA の実行中に名前を付けて保存の確認ダイアログが表示された場合に、RPAが自律的に判断するのではなく、人間に操作してもらう、エスカレーションを実現します。
フリーの RPA ツールPMCでエスカレーションを実現する
今回の記事でも、これまでと同様に前回までの RPA シナリオ利用するので、作成していない方は作成してくださいね。
さて、エスカレーションを実現するにはどういった要素が必要でしょうか?
ユーザーに操作してもらうために、通知するダイアログが必要ですね。それから、「名前を付けて保存の確認」ダイアログが表示されていることを認識するためのIf文が必要そうです。If 文は初めの頃は悩みやすいので、復習も兼ねて作って行きましょう。また、さらに今回はIf文の入れ子、Elseにも挑戦します。
この記事が役に立つ人
- Pulover’s Macro Creator で処理を止め、ユーザー入力によるエスカレーションを実現したい人
- If文をもっと使いこなしたい人
- RPA シナリオの実行の終了を通知したい人
- 定型業務と非定型業務が混在した業務で、定型部分を RPA 化したい人
この中で、「定型業務と非定型業務が混在した業務で、定型部分を RPA 化したい人」というのが少しイメージしにくいかもしれません。たとえば、ブログのライティング業務があったとします。「ブログのお題」、「素材」、「資料」などがまとめて管理システムなどに格納されているとします。
それらの必要な情報をどこからか自分のPCコピーしてきた後、開いてデスクトップに並べたら「ライティングを促す表示を出し」、実際にライターが記事を書き終わったら表示を消すと、今度は書き上がった成果物が提出される……、というような RPA シナリオです(お察しの通り、相当複雑なシステムになります)。しかし、そういうことも可能だ、という参考ですね。
関連記事
本連載の他の回や、Pulover’s Macro Creator 関連の記事はまとめページから探すのが便利です。
エスカレーションを実現する RPA を作成する
下準備
それでは、前回制作した、 RPA シナリオを開いてください。シナリオを開いたら、該当するタブで Ctrl + Shift + D、または、マクロメニューから「マクロを複製する」を選択します(DはDuplicate のDですね)。すると、前回の RPA が新しいタブにMacro2やMacro 3といった名前で複製されます。今回は、この複製された RPA シナリオを編集していきます。
まずは、前回作成した、IfWindow Active アクションから[EndIf]アクションまでを(If も含めて)削除します。
RPA シナリオが表示されたパネルは、上記のようになります。せっかく作成したIf文ですが、練習も兼ねて作りなおしましょう。
ユーザーに問い合わせるダイアログを作成する
削除がすんだら、Moveが選択された状態で、メッセージボックスボタン(Shift + F5キー)をクリックします。
表示された「メッセージボックス」編集ダイアログで、
- メッセージに「上書きするか決定してください」
- タイトルに「確認してください」
と入力してOKをクリックしてダイアログを閉じます。
いつも、タイムアウトには10秒を入れていましたが、ユーザーが入力するまで待ちたいので、ここでは0(無限に待つ)のままにします。
RPA を実行すると、「名前を付けて保存の確認」ダイアログが表示されるタイミングで、設定したメッセージボックスが表示されます。成功でしょうか?
残念ながら、If文がないのでtest.txtファイルを削除しても「確認してください」ダイアログが表示されてしまいます。まずこれをなんとかするところから始めましょう。
「指定ウィンドウがアクティブでないとき」のIf文を使う
今作成した[MsgBox]アクションを選択した状態で、If文ボタン(F10)をクリックします。
- If