PowerAutomateDesktopが無償化されました!

はじめに

皆さんこんにちは。

この記事を書いている今は4月で、早くも2021年の3分の1が終わろうとしており、最初の緊急事態宣言から1年が経ちます。この1年間は、様々なデジタル化、効率化が避けられないものとして、急ピッチで進められてきたかと思います。今回は、その急ピッチで進められてきた改革の中で大きな話題となるであろう、Power Automate DesktopというRPAツールについて書いていきたいと思います。こちらのRPAツールはローコードでの開発が可能であり、先日にはMicrosoft社より無償化が発表されております。

(Announcing new Power Platform capabilities at Microsoft Ignite - Microsoft Power Platform Blog)

筆者が携わっているプロジェクトの客先でも、導入中RPAツールでの内製化を行っているような部署のユーザーからPower Automate Desktopに関する話が何度か挙がりました。Microsoft社のRPAツールということに加え、無料というキーワードも大きな関心を寄せるきっかけになっていると考えます。

 

なぜローコード開発が流行っているのか

今後5年間で5億以上のアプリが開発される予想で、それは過去40年間分の量に匹敵すると言われております。さらには、既に事務作業やホワイトカラー従業員の半数は既存のテクノロジーで自動化可能となっています。そしてその需要を満たすための開発者が不足していること、コロナの発生で世界のGDPが縮小し、さらなる効率化を目指したデジタル需要が高まりました。コーディングを全ての人に教えるということは難しく、その代わりMicrosoft社ではローコードツールを用いて全ての人を開発者とすることを目指したようです。

要するに誰でも開発できるようなツールを作りました、ということですね。

(Microsoft Power Automate Desktop for Windows 10 初心者向け勉強会)

これまでにもいくつかローコードツールであるPower Platformの他ツールに関する記事も掲載しておりますので、よかったらご覧ください。

 

Power Automate Desktopとは

Power Automate Desktopとは、Microsoft社が提供しているMicrosoft Power Platformという製品群のうち、Power AutomateにRPA機能を組み込んだものがAutomate Desktopです。Microsoft Power PlatformにはPower Automate以外に、Power BI、Power Apps、Power Virtual Agentsというものがあります。

構成図

Microsoft Power Platform 全体では、 Power Apps でのカスタムアプリの構築、Power Automate で収集したデータに基づくプロセスの自動化、 Power BI で収集したデータの分析を行い、データドリブンなビジネスを構築することを目的としています。

 

無償版と有償版について

Power Automate Desktop無償版使用時は、フローをOneDriveに格納する個人版(Microsoftアカウントでサインイン)と、Microsoft Dataverseに格納する組織版(職場または学校のアカウントでサインイン)と2つの方法があります。

有償と無償、またアカウントの種類によって何が違うのか、マイクロソフトコーポレーションのPower Platform製品チームシニアプログラムマネージャーの吉田大貴さんが一覧表にまとめてくださっています。

比較表

 

特に需要が大きいと思われる、トリガー/スケジューラーによる自動実行は有償プランが必要となっております。ただ、無償でも豊富なアクションを利用できるおかげで、RPA化そのものは不都合なく行うことができます。

 

Power Automate Desktopの機能紹介

33のアクショングループがあり、合計300を超えるアクションが利用できます。アクションとは、クリックする、ブラウザを起動する等、予め用意された操作のパーツのことです。

下図を見るだけでも非常にたくさんのアクションが用意されていることがわかりますね。アクションの紹介例として、ブラウザ操作で利用しそうな「ブラウザの起動」「クリック」「ファイルの移動」をピックアップしてみました。

アクションの画像

アクションの一覧

 

・webブラウザ操作

ブラウザでの操作を自動化したいとなった場合、まずはブラウザを起動するところから始まります。

利用したいブラウザを決めて「Webオートメーション」グループから該当するブラウザのアクションを選択します。Internet Explorer、FireFox、Google Chrome、Microsoft Edgeが用意されているようです。筆者が利用しているツールでは、ブラウザ起動アクションのオプション設定でブラウザを選択していましたが、Power Automate Desktopではブラウザごとにアクションが分かれています。

ただ、オプションの設定は基本的には変わらないようで、アクション自体を分けることでユーザーが理解しやすいように配慮したものと思います。

IEを起動するアクション

そしてその他のオプション設定では、実行時にエラー原因となりがちなポップアップダイアログの操作やウィンドウサイズの指定まで行ってくれる仕様となっており、別のアクションで実現する必要がない点は、開発者視点で非常にありがたいものだと思いました。前回ページ復元のポップアップが出てきたり、ウィンドウが小さくなっている、などRPA構築時の想定から忘れがちなケースへの対処がオプションから簡単にできるのは手軽で便利です。

 

・クリック

クリックには複数種類があり、今回はブラウザを利用する想定のため、Webページのリンクをクリックするアクションをピックアップしてみました。

クリックにもいくつか種類があります

Webページのリンクをクリックの設定画面

クリックのアクションでもオプション設定からポップアップを操作することが可能となっており、付随して発生する操作を1つのアクションで処理できるのは便利ですね。開発時には利用したデータの都合や立ち上げたタイミングで発生しなかったポップアップをオプションで処理できる、というのは、その画面を再現して対処する必要がないという点で大きなメリットになると思います。

 

・ファイルの移動

ダウンロードしたファイルをどこかに移動させる等を実現したい時に利用します。GUI操作で移動させたいファイルやフォルダを選択して実装できるのは、普段開発していないユーザーには優しい機能だと思います。移動先にファイルが存在している場合に移動させようとするとエラーとなりますが、それを先回りしてオプションで対処できるようになっている点もありがたいものです。

ファイルの移動

 

その他、各アクションごとにエラー発生時の振る舞いについて設定できる点も、Try Catchという考えになじみがないユーザーにとって大きな手助けになるかと思います。

エラー処理

 

ただ、1つ普段RPA開発を行っている者から見て懸念点もあり、アクションを設定後、そのアクション名を変更することができませんでした。小さなプロセスの自動化であれば問題ないかもしれませんが、大きなプロセスの自動化を行う場合は、同じアクション名がいくつも並ぶこととなり、どれが何をしているのかがわかりづらくなりそうです。

 

実際にRPA化してみた

今回、弊社RPAサイトを立ち上げて、コラムページに遷移、「Power Automate」で検索、一番上のコラムを開く、という作業を自動化してみました。

アクションは「新しいMicrosoft Edgeを起動する」「Webページのリンクをクリックします」「Webページ内のテキストフィールドを入力する」「Webページのリンクをクリックします」「Webページのリンクをクリックします」の順です。

一連のフロー

画面の遷移

 

操作対象の項目はセレクターと呼ばれる要素で特定される仕組みとなっており、以下の図はアクション設定時に単純に選択しただけの状態のセレクターです。RPA中級者以上になると、このセレクターを調整することで、ループ処理を可能にしたり、小さな変更に強いRPAを作成することができます。

コラムボタンのセレクター

 

アクションのUI要素選択時は、「Ctrl + クリック」で操作対象を確定する仕様となっております。選びたい項目の上にカーソルがある(ホバー)状態になっていなければ現れない項目やアクティブな状態の時のみ現れるプルダウン等、操作対象として確定したいのにPower Automate Desktopを一度操作することで表示が消えてしまうような要素を簡単に選択できるようになっております。

他ツールでは、要素選択を数秒間中断させる等の機能で隠れてしまう要素を取得できるようにしておりますが、こちらはツールを使いこなさないと知らなかったといったことや時間制限もなく安心して取得できるので、便利な点だと感じました。

アクションのUI要素選択時の画面

 

 

ツール所感

主にGUI操作で様々なケースに対応可能なRPAを構築できるツールとなっており、さすがMicrosoft社といった感想です。これまではあらゆる実行環境や状態を考慮したうえで、エラーとならないように構築していたRPAが、詳細なアクション、充実したオプション設定で簡単に実現できるようになりました。RPA開発だけであれば、ある程度慣れてしまえばできるかと思いますが、エラー調査や安定稼働を考えた場合には、やはりプログラミングに精通し、ユーザーの利用状況をイメージできるような技術者である必要がありました。

それが一部とはいえ、オプション設定で簡単に対処できるようになったのは、非技術者にとって大きな手助けになるかと思います。

これまでほぼあらゆるユーザーの環境で利用可能であった便利ツールの代表例であるVBAですら、全社員が利用するというのは難しい話でしたかと思いますが、ローコードの平易さであればそれも可能ではないかと思います。

ただ、技術者にとってはローコード故にやりたいことが簡単にコードで実装できない、といった悩みも考えられそうでした。

 

全体を通して

今回、このコラムを書くにあたって、筆者は初めてPower Automate Desktopを利用してみましたが、開発時のかなりの部分においてGUI操作で構築することができるようになっており、ローコード開発の手軽さを実感しました。ただ、ローコードゆえに、コードで実現できる人にとってはかゆいところに届かないものもありそうです。これまでは大小さまざまな業務をSIベンダーに依頼していたRPA化も、今後は簡単なものはユーザー自身の手で開発し、高度な設計が必要であったり、規模が大きく難しいものはSIベンダーに依頼する、といったすみわけが進んでいくのかもしれません。

 

 

もっと知りたい方はこちら

ページトップ