こんにちは。
キャスレーコンサルティングのSD部のS.Kと申します。

皆さんはRPAのツールに何を思い浮かべますか?
Automation Anywhere(オートメーション エニウェア)」、「Blue Prism(ブループリズム)」そして「UiPath(ユーアイパス)」でしょうか?

私もUiPathを利用して単純な業務作業を自動化したことがありますが、ここに来てあのMicrosoftの「Power Automate Desktop(パワーオートメイトデスクトップ)」(以下PAD)が、Windows 10ユーザー向けに無料で公開したことで注目されています。

今回はそのPADについて早速に手作業の部分をRPA化しつつ感じたUiPathとの違いや、使い辛いと感じた点から今後の期待などについて記載します。

基本的な事は他と同じく出来る

UiPathにてExcelとWeb画面の連携フローを作った事がありましたが、このPADでも同じように簡単に連携が出来ます。

試しにPADを使って早速自社で利用している勤怠システムに対して有休申請を行うフローを作成しました。

試作フロー「有休申請」ver0.1

PADを使ってWebサイトの入力・操作等を行う場合、まずは使っているブラウザの拡張機能をインストールする必要があります。
私はChromeを使っているので事前にChromeの拡張機能として「Microsoft Power Automate」をインストールしました。

PADのインストール時に企業用アカウントで使用しようとしたら「Microsoft Dataverseデータベースが見つかりませんでした」となってしまいました。これは一般用アカウント※1とは違い、仕事用と学校用には「Dataverse」が利用されるためでした。アカウント作る際にはその点にお気を付けください。
今回はとりあえず試したいだけなので一般用アカウントで登録を行う事で回避しました。
※1 一般用はOneDriveを使用します。

今回のようなWebサービスのフローを作る上で基本として以下の
・ログインが必要か?
・入力としては何が必要か?
これらを押さえておけば大体上手くいくと思います。

それでは実際にフローを作っていきましょう。
PADを開くと以下のような画面が出てきますので左上から「新しいフロー」を選択して作成していきます。

フロー作成画面では左側に[アクション]と呼ばれる物、中央にフロー、右側に[変数][UI要素][画像]があります。

[アクション]とは例えば自分がWebを操作する際に[URLを入れて飛ぶ][ユーザーIDを入れる][パスワードを入れる][送信ボタンを押す]などの一つ一つの動作を受け持つ処理が用意されています。
その[アクション]をドラックアンドドロップでフローに置くと必要な情報設定画面が立ち上がります。
例)Webページのテキストボックスへの入力

ここでUI要素というのがありますが初期は何も登録されていない状態なので新しいUI要素の追加をします。
今回はWeb画面上の入力欄やボタンがUI要素となります。

ここで、対象の要素をWeb画面上から選択します。(Ctrlキー+クリック)
テキストボックスを選択し、それに入れる値を設定します。当然、値には固定も変数も可能です。ボタンの場合には押下する[アクション]にてUI要素を設定します。
この作業を繰り返して必要な画面処理をフローに落とし込んでいく事で自動化フローが完成します。

試作フロー「有休申請」ver0.2

自動処理の中で、可変的な部分は別途実行時に入力出来るようにしましょう。
その場合、[アクション]より[入力ダイアログを表示]を選択します。


ダイアログにて入力した値は[生成された変数]に反映されます。※ここではUserInputという変数名
今回試作するフローでは有休の申請なので対象日が可変部になりますのでそちらを入力ダイアログにします。

こんな感じでユーザ指定の日でWeb画面から有休を申請するフローが完成しました。
このように単純作業をRPA化する事で時短が出来るので他の仕事に集中出来ます。

RPAの欠点

RPA化で楽になったとしてもWeb画面側のUIが変更されたりすると動かなくなってしまいます。
この点はWebの設計に依存しているためどうしようもない部分ですね。
例えば、自社サービスであればRPA部隊とサービス部隊の間で【画面が変わる場合にはRPAに影響が出る為事前に調整する】事で不測の事態(よくある急にRPAがエラーを吐いて動かない!等)が避けられるかと思います。

クラウドフロー、デスクトップフロー

今回ご紹介しているのはデスクトップフローと呼ばれるものですが、それ以外にブラウザ版のPowerAutomateではクラウドフローと呼ばれるものがあります。
クラウドフローはクラウドサービスを自動化するものです。
対してデスクトップフローはPC上のファイルやアプリケーションの操作、RPAで代表的な操作とも言える、Webブラウザへの操作を自動化するフローになります。


クラウドフローでは電子メールの添付ファイルをDropBoxに保存するフローなど色々なテンプレートが用意されています。
また、クラウドフローからデスクトップフローを呼ぶことも出来ます。
※他にビジネスプロセスフローがありますがこちらはPremiumアカウントでしか利用できないので説明は割愛します。

ちょっと使ってみてここが残念

ゼロ埋め数字変数が勝手に数字に

変数で日付の値を格納しようとして1日を[01]として登録しようとした場合に勝手に[1]へ変更されてしまいます。
Excelみたいな気の回し方、求めてないですよそれ。。。

UI要素が分かり辛い

登録したUI要素について、文字にて表現されるためどこの要素だか分かり辛いのがUiPathとは違っていて気になりました。
1つ目の画像がPAD、2つ目の画像がUiPath

エクスポートが出来ない

個人アカウントだからかは分かりませんが、フローのエクスポートが出来ないので他の人に渡すことが出来ない様です。
残念。無料で配布するならフローを体験して貰って便利さを理解する人を増やすというのも手だと思うのですが、、、

最後に

今回はこれからRPA界の黒船となる可能性があるPowerAutomateDesktopをご紹介いたしました。
UiPathを使ったことがある人はサクサクと作れる事が今回分かりましたが、
記事の中で照会したクラウドフローやデスクトップフローとの連携などがPowerAutomateの強みであったりするかと思います。
機会がありましたらそちらについても使用してブログに出来たらと思います。

今回、使ってみてちょっと使いずらいなと思った点は今後改良されていったりすると思います。
何より無料というのが大きいのでPADの今後に期待しております。

RPAはプログラミングが分からない人でもRPAツールにより作業効率化出来るのが特徴です。
現在毎回やっている面倒な作業、月末に集中する事務作業など、「これ単純作業だな~」って思った作業は全て自動出来る作業かもしれません。ぜひRPAを活用されたらいかがでしょうか?
それではまた。

s.k
SD部 s.k