RPAのMicrosoft Power Automate DesktopとUiPathを比べてみた

Pocket

Microsoft Power Automate Desktopとは

Microsoft Power Automate Desktop(以下Automate Desktop)とは、Microsoft社の年次イベント「Ignite 2020」でパブリックレビューが開始された、RPA機能を持った新製品です。

もう少し詳しく説明しますと、Microsoft社が提供しているPower Platformという製品群の中にあるPower Automateという製品に、RPA機能を組み込んだものがAutomate Desktopです。

Power Platformの中にはPower Automate以外にもPower Apps、Power BIという製品があります。 Power Platform及びPower Appsについてはこちらの記事がありますので是非ご覧下さい。

今回はAutomate Desktopでロボットを作成していき、その機能とPower Platformの製品としての特色を、tdiで導入支援等を行っていますRPAプラットフォーム「UiPath」と比較しながらご紹介します。

Microsoft Power Automate DesktopとUiPathの機能を比較

RPAのシナリオ作成で機能を比較してみた

今回は実際にRPAのシナリオを作成しながら、Automate DesktopとUiPathの機能を比較します。

なお、シナリオは以下の記事と同じ交通費検索とします。

事前準備

Excelファイルに事前に出発駅と到着駅を入力しておき、両駅の区間の料金をExcelファイルに書き込みます。

用意したExcelファイルは以下のような内容です。このシナリオを「Demo_miso」という名前で作成します。

Excelファイルの起動

シナリオ作成を以下の手順で設定します。

  1. 左側のアクションにある「Excel」をクリックします。
  2. 「Excelの起動」を中央のMainにドラッグします。
  3. ドキュメントパスに今回使用するExcelファイルを指定します。

下図のように指定したExcelのファイル名の起動のシナリオが作成できます。

  • UiPathとの比較

UiPathではExcelを使用するのに、Excelアプリケーションスコープを定義してからExcelファイルの読込のシナリオを設定していきます。Automate Desktopではそのような定義はいりません。

Excelのセルの読込とセル格納用の変数設定

次に読み込んだExcelから、出発駅と到着駅の値を取得し、変数に設定します。出発駅は「StartSt」という変数、到着駅は「EndSt」という変数に設定します。

シナリオは以下の手順で設定します。

  1. 出発駅の読込として「Excelワークシートの読み取り」を中央のMainにドラッグします。
  2. 読み取りたいセルを指定します。(取得を単一セルの値・先頭列・先頭行を数字で指定します)
  3. 到着駅も同じ手順で「EndSt」を作成します。

Excelの読込のシナリオが下図のように作成されます。

  • UiPathとの比較

セルの設定方法は、Automate Desktopでは行・列を数字での指定のみ、UiPathでは「A1」という指定です。変数は、Automate DesktopではExcelのセル読込み処理で自動生成され、UiPathではプロパティ設定で明示的に指定します。

レコーディング機能を使用したブラウザでの操作

画面上部のWebレコーダーをクリックして、レコーディングの操作を行います。

以下の手順で設定と操作します。

  1. 事前にレコーディングしたいサイトをブラウザで立ち上げておきます。
  2. 画面上部のWebレコーダーをクリックすると使用するブラウザの選択を促す下図の画面が表示されます。
  3. 使用するブラウザを選択します。
  4. 次に下記の画面が表示され、記録の開始をクリックします。
  5. ブラウザの操作を行うと操作の記録が下図の様に記録されます。

下図のようにflow designer画面にレコーディングの内容が反映されます。

  • UiPathとの比較

レコーディング開始時、Automate Desktopではブラウザの選択をします。UiPathでは選択しません。

レコーディング機能で作成された内容にExcelから読み込んだ内容を反映

先ほどの操作ではレコーディングの内容でシナリオが作成されているので、次はExcelから読み込んだ内容をシナリオに反映します。以下の手順で設定します。

  1. 「webページ内のテキストフィールドに入力する」を編集モードにします。(ダブルクリックで「アクションを編集」するが表示されるのでクリックします)
  2. テキストの部分の「%新大阪%→%StartSt%」に変更します。
  3. 下図のように「{X}」をクリックすると変更できる変数一覧が表示されるので、変更する変数をダブルクリックします。
  4. 到着駅のテキスト部分も「%東京%→%EndSt%」とします。
  • UiPathとの比較

Automate DesktopとUiPathでは操作方法は異なりますが、事前に作成した変数を選ぶ機能について違いはありません。

レコーディング機能で作成されたWeb上に表示された金額を変数へ格納する

レコーディングの内容でWebページ上の金額を取得するシナリオ部分を、以下の手順で変更します。

  1. 「Webページの詳細内容を取得します」を編集モードにします。下図のように表示され生成された変数を変更します。
  2. 画面から読み取った内容が変数に格納されます。

下図のflow designer画面が変更したシナリオの内容になります。

  • UiPathとの比較

Automate DesktopとUiPathではレコーディングで取得できたWeb上の文字が自動生成された変数に格納される機能についての違いはありません。

金額の書き込みとExcelファイル保存

以下の手順で設定します。

  1. 「Excelワークシートの書き込み」を中央のMainにドラッグします。
  2. 書き込みたい値を指定します。「変数:%Li%」
    (画面上{X}をクリックして設定したい変数をダブルクリックします)
  3. 列:3・行:2を指定します。
  4. 保存をクリックします。
  5. 「Excelを閉じる」を中央のMainにドラッグします。
  6. 「ドキュメントを保存する」を選択します。
  7. 保存をクリックします。
  • UiPathとの比較

UiPathではExcelを使用するために、Excelアプリケーションスコープを定義してからExcelファイルの保存のシナリオを設定します。Automate Desktopではそのような定義はいりません。

Automate Desktopのロボットのシナリオの完成

flow designer画面にシナリオが完成しました。画面上部の保存をクリック、OKをクリックしてシナリオ作成完了です。

上図の実行をクリックすると、テスト実行できます。シナリオ実行後のExcelは下図のように金額が書き込まれています。

RPAが使用できる画面を作成してみた

はじめに紹介したように、Automate DesktopはPower Platformの製品の一部です。そこで、Power Platformの製品としての特色をRPAが使用できる画面を作成してみました。

事前準備

連携の処理を作成する前提として、「オンプレミス データ ゲートウェイ」をAutomate Desktopを実行するPCにインスト―ルをしておく必要がありますので事前に設定をしておいて下さい。

※オンプレミス データ ゲートウェイについてはMicrosoft社公式ドキュメントを参照ください。

Power Automateとの連携

RPAが使用できる画面を作成の前にAutomate Desktopで作成した「Demo_miso」というRPAのシナリオをPower Automateに連携させてみます。Power Automateとの連携は、Power Automateのフローをマイフローの画面で新規→自動で一から作成でフローを作ることができます。

下図のように、フロー作成画面が表示されます。

作成のステップは以下の手順となります。

  1. トリガーのステップの作成をします。
  2. Automate Desktopで実行するというステップを作成します。

この2ステップのみでPower Automateのフローが完成です。

今回のフローでは「手動でフローをトリガー」のステップをトリガーとして作成してみましたが、他にも、メールを受信・OneDriveにファイル作成等の指定が容易にできると思います。

Power Appsとの連携

Power Appsとの連携作成についての事前準備

Power AppsがトリガーのPower Automateのフローを先ほどの操作のようにあらかじめ作成しておきます。Power AppsはPower Automateのように直接Automate Desktopを実行するという設定ができないので、Automate Desktopで実行するというステップが組み込まれたPower Automateのフローの事前に作成しておきます。

フロー名をDemo_miso_Flow2とし、保存しておきます。

上図のフローをキャンパスアプリのボタンをクリックした操作で実行できるように作成してみます。

Power Appsのキャンパスアプリの作成

Power Appsの新しいアプリ→キャンパスアプリで作成を始めます。

上図の様に空の作成画面が表示されるので、作成をします。作成のステップは以下の手順です。

  1. 空の画面にタイトルとボタンを設定します。
  2. ボタンをクリックするとPower Automateで作成したフロー「Demo_miso_Flow2」が実行するようにします。

下図のように作成してみました。「デモ 実行」ボタンをクリックするとPower Automateのフロー「Demo_miso_Flow2」を実行するという関数を記述するだけで作成できました。Power Automateの「Demo_miso_Flow2」のフローが実行されるとAutomate Desktop のRPAシナリオ「Demo_miso」が実行されます。

今回作成したPower AutomateのフローとPower Appsのキャンパスアプリの作りは非常にシンプルですが、簡単にAutomate Desktopとの連携ができました。

  • UiPathとの比較

UiPathではRPAが使用できる画面を作成する機能はありません。Automate Desktop はPower Platformの製品と連携すると、RPAが使用できる画面が作成できます。

デプロイ方法を比較してみた

画面の作成だけはなく他にもUiPathにはない特色があります、下図をご覧下さい。PCで作成されたAutomate Desktopの一覧表示画面です。

下図は、Microsoft社のPower Appsのページにアクセス後、「フロー」の画面へ遷移し「UIフロー」をクリック後の画面です。

同じように、作成したRPAのシナリオ「Demo_miso」が一覧として表示されています。この画面は「Power Automate」のフロー一覧が表示される画面でもあります。

実は、筆者はPC上で作ったRPAのシナリオをPC上からサーバーにアップロードというような操作を一切していません。が、PC上でRPAのシナリオを作成保存するだけでこのようにサーバー上に反映されます。

この機能だけでも、Power Platformとの連携の親和性や容易さを感じられます。

  • UiPathとの比較

UiPathではStudioというRPAシナリオ作成ツールで「パブリッシュ」という操作を手動で行ってデプロイします。Automate Desktopは手動の操作はいりません。

Microsoft Power Automate DesktopとUipathの機能の比較まとめ

Automate Desktopを使ったシナリオ作成手順を紹介してきました。そこでの一連の作成の手順を踏まえて機能の比較結果を下表にまとめました。今回のシナリオではExcel操作とWebレコーディングを使用したのでその機能での比較です。また、RPAが使用できる画面作成・デプロイについても比較します。

機能 共通点 Automate Desktopの特徴 UiPathの特徴
Excelへの読込・書込 起動→Excel読み書き→終了(保存)という手順 Excelを使用するための定義が不要 Excelアプリケーションスコープを定義
Excelのセルの指定方法 なし 行・列を数字での指定 「A1」という指定
Webレコーディング 記録開始→ブラウザでの操作→記録終了という手順 レコーディング開始時にブラウザを選択 ブラウザ選択不要
変数設定 レコーディング時Webからの読み取り操作時に自動生成される Excelのセル読込み処理で変数が自動生成される 明示的に指定する
RPAが使用できる画面の作成 なし Power Appsを使用することで作成できる 機能なし
デプロイ PC上から行える ツールでの操作が不要 StudioというRPAシナリオ作成ツールで「パブリッシュ」という操作を手動で行ってデプロイ

Microsoft Power Automate DesktopとPower Platformとの連携について

Power Automateという製品にRPA機能を組み込んだ製品ということで、連携の手順や方法はとても簡単です。「アプリを作成する」ためのツールというPower Platformというローコード開発基盤の考えに沿っているように思えました。この連携機能を多いに活用すれば、RPAを人が実行する時の手段として非常に有効に感じました。

所感

上記表のように、Automate DesktopとUiPathどちらもRPAのシナリオ作成の機能に大きな違いは見受けられないと思います。シナリオの作成の画面操作についても、それぞれの特色がありますが筆者の所感としては特に優劣はないと思います。

Automate DesktopについてはPower Platformの製品のPower Apps・Power Automateとの連携を筆者はおすすめします。特にPower Appsのキャンパスアプリの画面からRPAのシナリオが実行できるというのは他のRPA製品にはない特色だと思います。Power Platformというローコード開発基盤とRPAとの組み合わせを筆者は面白いと感じましたが、皆様はいかがでしょうか?

今回紹介したAutomate DesktopもPower Platform(Power AppsとPower Automate)どちらもOfficeのアカウント・学校や職場のアカウントをお持ちであれば手軽に始められます。ぜひ利用してみてはいかがでしょうか?

tdiはローコード開発にも力を入れていますので、こちらにお気軽にお問い合わせ下さい

RAP(UiPath)の導入支援についてはこちらへお気軽にお問合せ下さい

お問い合わせ先

執筆者プロフィール

Tanaka Atsuko
Tanaka Atsukotdi OutSystems推進室
最近のお気に入りの開発ツールはローコード開発ツール。
It is never too late to learn.(学ぶことに年を取りすぎているということはない)のマインドで日々精進中。
Pocket

関連記事