デジタル人材への第一歩!「Power Automate」ではじめるローコードでの業務自動化

Power Automate for desktop のアップデート情報(2022年6月、7月)解説 ~入出力変数で様々なデータ型がサポートされるように!

Power Automate for desktopはMicrosoftより2021年3月にサービスが提供開始されて以来、毎月定期的にアップデートが行われており、今この時も、我々ユーザーにとってより便利に、かつ使いやすいツールへと日々進化を続けています。今回は、直近の2022年6月、7月に行われたアップデートにフォーカスし、便利になったポイントや活用方法について解説していきます。

Power Automate for desktopのアップデート方法

アップデート内容の解説前に、まずは簡単にアップデートの方法について紹介します。Power Automate for desktopを起動して「設定」をクリックすると、⁠更新プログラムの確認」のボタンが表示されます。

図1

もし、Power Automate for desktopのバージョンが古ければ、下図のようにアップデートを促すウィンドウが表示され、⁠更新」ボタンをクリックすることでアップデートを行うことができます。

図2

Power Automate for desktopが最新と表示されアップデートができない場合は、以下の手順でPower Automate for desktopの最新版インストーラーをダウンロードし、インストールを行いましょう。

  1. 以下のページを開きます。
  2. ⁠Power Automateのインストーラーをダウンロードします。」をクリックします。
図3

2022年6月のアップデート情報

1.入出力変数でより多くのデータ型がサポートされるようになりました

Power Automate for desktopでは取得した値を「変数」に格納しています。⁠変数」とは値を入れておく箱のようなもので、Power Automate for desktopのフロー内では、変数に値を入れたり、変数の値を利用したり、変数の値を別の値と入れ替えたり、と基本的に変数を介して値をやり取りしています。

図4

「変数」には、テキスト型や数値型、リスト型、データテーブル型など、扱う値によって様々な型が存在しており、変数に格納する値によって変数の型が決まります。

図5

この変数に格納した値は、入力変数、出力変数を使用することで、Power Automate のクラウドフローや Power Automate for desktopのデスクトップフローから、他のデスクトップフローを呼び出す際に変数の値を受け渡すことが可能となります。

図6

例としてPower Automateと連携する場合を考えてみます。クラウドフローでは「デスクトップ用 Power Automateで構築したフローを実行する」アクションを使用することでデスクトップフローを実行できます。その際、下図のようにクラウドフローで取得した値を入力変数としてデスクトップフローに渡したり、逆に出力変数として デスクトップフロー で取得した値をクラウドフローで受け取ったりすることができます。

図7
図8

デスクトップフロー同士の場合も同様で、実行中のフローから「Desktop フローを実行」アクションを使用して別のフローを呼び出す際にも、値を渡したり、受け取ったりすることが可能です。

図9

しかしこれまで入力変数、出力変数では、冒頭で紹介したデータ型の内、テキスト型以外使用できませんでした。

図10

例えば、複数の値を1つの変数に格納しているリスト型やデータテーブル型の場合は、そのまま受け渡しができないため、テキスト型を入出力変数にて受け渡しを行い、JSON型に変換してから元の形式に変換しなおすといったひと手間が必要でした。

これは特に初級者にとって大きなハードルとなっていました。そのため、クラウドフローとデスクトップフローを連携する際は、クラウドフローのデータを扱う際に非常に苦労していたはずです。

図11

今回のアップデートにより、テキスト型以外に以下のデータ型が入力変数、出力変数で受け渡せるようになったことで格段に使いやすくなり、誰でも簡単に様々なデータを受け渡すことが可能となりました。

  • 数値型
  • ブール値
  • カスタムオブジェクト
  • リスト
  • データテーブル

2.デスクトップフローが外部リンクを介して実行できるようになりました

これまでデスクトップフローを実行するには、Power Automate for desktopを起動して一覧からフローを選択して実行するか、クラウドフローからデスクトップフローを呼び出す必要がありました。6月のアップデートにより、デスクトップフローを以下の形式の外部リンクを介して実行できるようになりました。

ms-powerautomate:/console/flow/run?environmentId=[envID]&workflowName=[Name]

上記の[envID]の部分はPower Automateの環境ID、[Name]の部分は実行したいフローの名称に置き換える必要があります。

Power Automateの環境IDはPower AutomateのWebポータルにサインインし、マイフローを選択するとアドレスバーに表示されます。⁠environments/⁠⁠ から ⁠/flows」までの文字列をコピーして使用します。

図12

今回は例としてDefault環境の「Test」というフローを実行する場合を考えてみましょう。

図13

外部リンクに環境IDと実行するフロー(Test)の名称を入力すると、以下のようになります。

ms-powerautomate:/console/flow/run?environmentId=Default-XXXXXXXX-XXXX-XXXX-XXXXXXXXXXXXX&workflowName=Test

設定した外部リンクをWebブラウザーのアドレスバーに入力しEnterキーで実行すると、下図のように実行確認のポップアップが表示されるので「Power Automate を開く」を選択します。

図14

すると、Power Automate for desktopのコンソール上に、フローの実行確認ウィンドウが表示されるので、⁠続行」を選択することでフローを実行できます。

図15

この実行確認ウィンドウは、Power Automate for desktopコンソールの設定内にある、⁠URL を使用してフローを呼び出すときに確認のダイアログを表示する」のチェックを外すことで表示せずに実行することが可能です。

図16

このように、外部からデスクトップフローを呼び出す手段が増えただけでも大きな変化です。しかし、実はこの外部リンクをWindowsのショートカット機能と組み合わせることで、Power Automate for desktopのコンソール画面を起動することなく対象のフローを実行できるようになります。

その手順は、まず新たにショートカットを作成し、設定した外部リンクを呼び出し先に設定します。これだけで、フローのショートカットを作成するといった使い方ができます。

図17

フローのショートカット外観は以下のようになります。

図18

Power Automate for desktopに触れたことがない人にとって、Power Automate for desktopを起動しフローを選択して実行すること自体がハードルとなる可能性があります。この方法であればPower Automate for desktopを起動したり、選択したりすることなく、だれでも気軽かつ簡単にフローを活用できるようになりました。

フローをショートカット化することで、フォルダーに分類分けして管理しておくことも可能です。

図19

他にも色々な活用方法が考えられそうです。ただし注意点として、外部リンクによる実行を行うには以下が必要となります。

  • Power Automate for desktopの有償ライセンス(Power Automate per user with attended RPA plan)が使用するMicrosoftライセンスに付与されている
  • Power Automate for desktopのバージョンが2.21以上

3.UIセレクターの編集画面がより見やすくなりました

Power Automate for desktopでは対象を操作する際、UI要素と呼ばれる情報を使います。UI要素には操作する対象を識別するために、セレクターと呼ばれるものが設定されています。下図のように、操作対象が対象アプリケーションやWebページのどこに存在するかを特定するための構造がセレクターに取得されており、このセレクターの内容を元にPower Automate for desktopが対象を探して操作を行っています。

図20

その特性上、対象となるアプリケーションやWebページのアップデートにより構造が変わると操作対象を見つけられなくなる恐れがあります。そのため、セレクターの内容を編集する、アップデート前後でセレクターを複数取得する、といった処理をしておくことでアップデートに影響されず処理が行えるようになります。

これまではこのセレクターの選択画面と編集画面が分かれており、複数のセレクターを編集、確認する際には非常に手間のかかる作業でした。しかし、この画面がアップデートにより画面が統合され、より効率的に編集しやすく改善されました。またセレクターを無効化できるようになり、セレクターを複数一気に取得しておいて動作を検証する、といった使い方が可能となりました。

図21
図22

4.SWTフレームアプリケーションでのJava自動化

Power Automate for desktopは、SWTフレームワーク上に構築されたJavaアプリおよびアプレットでJava固有のUI自動化をサポートするようになりました。これにより、より多くのJavaのアプリケーションが操作できるようになりました。

2022年7月のアップデート

1.変数グループにデータテーブルのアクションが追加

7月のアップデートにて、データテーブルのアクションとして以下のものが新たに追加されました。

  • 新しいデータ テーブルを作成する
  • 行をデータ テーブルに挿入する
  • データ テーブル内で検索または置換する
  • データ テーブル項目を更新する
  • データ テーブルから行を削除する
図23

データテーブルとは下図のように、変数に表形式(二次元配列)で値を格納しているデータ型となります。主に、⁠Excelワークシートから読み取る」アクションや、⁠ウィンドウからデータを抽出する⁠⁠ アクション、⁠Web ページからデータを抽出する」アクションで複数の値をまとめて取得した際に使用します。

図24

今回のアクション追加によって、これら取得したデータテーブルをフロー内で簡単に編集できるようになりました。

例えば、データテーブル内から特定の文字(部署名や氏名など)を含む行のみを取得したい場合、Excelにおいては「Excelワークシート内のセルを検索して置換する」アクションが用意されていたため取得できていましたが、アプリケーションやWebページから取得した値の場合、一度Excelに貼り付けて処理を行う必要がありました。これが、新たに「データ テーブル内で検索または置換をする」アクションが追加されたことにより、フロー内で検索や置換の処理が完結できるようになりました。

図25

「データ テーブル内で検索または置換をする」アクションと「データ テーブルから行を削除する⁠⁠、⁠データ テーブルから行を挿入する」アクションを組み合わせることで、特定の位置に行の削除や追加も簡単に行うといった使い方が可能です。

2.RDP(リモートデスクトップ)やCitrixなど、リモート先のUI要素が取得可能に

これまで、Power Automate for desktopでは、リモートで接続した先のUI要素を取得できず、画像処理や座標といった操作で処理を行っていました。

画像処理の場合、解像度やディスプレイの拡大率が異なっていたり、他のウィンドウに対象が隠れていたりすると操作できず、座標の場合はウィンドウの位置がずれてしまうと処理に失敗する等の制約があり、処理が安定しない、調整を含めたフローの構築に時間がかかるといった、難点がありました。

7月のアップデートで新たに「仮想デスクトップ用 Power Automate エージェント」が追加されました。⁠仮想デスクトップ用 Power Automate エージェント⁠⁠ を操作対象となる端末もしくはサーバーにインストールすることで、RDPやCitrix等、リモートで接続した際にUI要素が取得できるようになりました。これにより、効率的かつ安定的にフローを構築できるようになりました。

ただし、2022年8月時点ではプレビュー版となっているため、不具合や今後仕様が変更される可能性がある点には注意してください。

図26
図27

3.新たなフローサンプルが追加されました

Power Automate for desktopには、フローを作成する例としてフローサンプルが提供されています。フローサンプルは、Power Automate for desktopのコンソール上から、⁠例」のタブをクリックすることで確認できます。カテゴリごとに分かれて様々なサンプルが提供されていますが、今回新しく以下のカテゴリがアップデートによって追加されました。

  • 日時処理
  • PDF自動化
  • テキスト操作
図28

4.フローの詳細が確認可能に

フローに「詳細」の項目が新たに追加されました。詳細ではフロー名やフローの説明を編集でき、作成したフローがどのような用途なのかをいつでも確認できます。

図29

これまでは、フローの内容はタイトルを参考として判別する必要があり、詳細はフロー内に「コメント」アクションで残しておくのが一般的でした。しかしこの方法では、フローの内容を確認するのにいちいちフローを開いて見る必要がありました。このアップデートは比較的小さな追加機能に感じますが、担当者の手間やストレスを軽減する上では非常に大きな変化といえるでしょう。

ただし、フローの内容をテキストデータとして共有した場合は、詳細の内容が共有されないため、毎回編集する必要がある点には注意が必要です。

まとめ

今回はPower Automate for desktopのアップデート内容について、6月、7月分をフォーカスして解説しました。6月、7月だけでも公開されているだけで今回紹介した8つものアップデートがあり、公開されていない様々な細かい修正や改善点も存在します。小さな変化を見つけてみるのも楽しいかもしれません。

今後も不定期となりますが、アップデートの情報を順次紹介していきます。皆様のRPA開発の一助として頂ければ幸いです。

おすすめ記事

記事・ニュース一覧