「UIオートメーション~Windows~」を使いこなす

Power Automate Desktop
「UIオートメーション」を使いこなす~Windows~

UIとはUser Interfaceの略でユーザーとコンピュータをつなぐ装置や入力フォームなどを指します。マウスやキーボードはもちろん、画面上のボタンやテキストエリアなどもUIに含まれます。Power Automate Desktopの「UIオートメーション」アクションでは主に画面上のUI操作を自動化していきます。マウスとキーボードの自動化に関しては「マウスとキーボード」というアクションから実行できるので、そちらをご利用ください。「UIオートメーション」の操作は種類が多く、メニューを開いてみると直下のアクションが13種類、更にプルダウンメニューが3種類用意されています。このページでは「Windows」メニューの中にあるアクションについてひとつひとつ動きを確認していきましょう。

(なお、2022/7/29執筆時点でのアクション数であり、今後、利用できるオプションが増える可能性があります。)

1. ウィンドウの取得

ウィンドウの取得

「ウィンドウの取得」アクションを利用することで、ウィンドウインスタンスが作成されます。このウィンドウインスタンスができることで、Power Automate Desktopのフロー内で取得したUI要素を利用できるようになります。インスタンスを取得しなくても一回一回UI要素を取得すれば良いのですが、同じ要素を使いたいなら使い回した方が将来的に変更を加えたい場合なども一度の変更で済むので保守性が向上します。

設定画面から「ウィンドウの取得方法」を「フォアグラウンドウィンドウ」にするか「UI要素を指定」して取得するか選ぶことができます。フォアグラウンドウィンドウの場合は画面の最前面にあるウィンドウを自動で取得します。

ウィンドウの取得設定画面

「特定のウィンドウ」を選んだ場合はUI要素を指定する必要があります。テキストボックス右側のアイコンをクリックすると、「UI要素の追加」ボタンがあるので、そこをクリックしてください。Power Automate Desktopのデザイナー画面が閉じて、取得できるUIが赤い枠線で囲まれるので、そこで「Ctrl + 左クリック」をすると取得できます。

「ウィンドウを全面に表示する」をONにすると、ウィンドウの取得後に、取得したウィンドウを最前面に持ってきます。詳細メニューではタイムアウトを設定することができます。

UI要素を取得キャプチャ画面

2. ウィンドウにフォーカスする

ウィンドウにフォーカスする

「ウィンドウにフォーカス」するアクションを利用すると、任意のウィンドウをアクティブにし、最前面に持ってくることができます。

設定画面ではウィンドウの取得方法を「UI要素ごと」か「インスタンスごと」か「タイトルやクラスごと」の中から選ぶことができます。「UI要素ごと」の場合は前項のようにUI要素の追加から選択したいウィンドウのUIを指定してください。「インスタンスごと」の場合は「ウィンドウの取得」アクションで生成されるインスタンスを利用すればOKです。

ウィンドウにフォーカスする設定画面

「タイトルやクラスごと」に検索する方法でウィンドウを取得する場合は「ウィンドウの選択」というところをクリックして、取得したいウィンドウが赤い枠線で囲まれたら「Ctrl + 左クリック」で選択しましょう。そうすると下図のように自動でタイトルとクラスが挿入されます。

ウィンドウにフォーカスする設定画面2

なお、タイトルを自力で取得したい場合は、Webサイトの場合だと下図のような「タブの文字 – Google Chrome」みたいな感じになります。Wordファイルの場合だと「タイトル – Word」となります。とはいえ、完全一致で検索するのは難しいです。「*」などを使えば部分一致検索もできるので、上手に活用してあげましょう。

ウィンドウズタイトル例

クラスを自力で確認するのはより難しいです。画面右側のUI要素アイコンをクリックすると、UI要素の一覧が表示されます。その一覧のUIをクリックすると、詳細を見ることができます。詳細画面に属性という項目があり、そこに「Class」というものがあれば、その値がクラスになります。なお、UI要素を取得する前にクラスを知りたければディベロッパーツール(開発者ツール)で確認する必要があります。そちらの確認方法はインターネットで検索すればたくさん見方が出てくると思うので、そちらでご確認ください。

ウィンドウズクラス確認方法

3. ウィンドウの状態の設定

ウィンドウの状態の設定

「ウィンドウの状態の設定」を利用すると、指定したウィンドウのサイズを変更することができます。下図設定画面を見てみましょう。まずは対象となるウィンドウの取得をします。取得方法は3種類あるので、そちらから選択ください。選択の仕方については「ウィンドウにフォーカスする」で説明しているので、そちらをご覧ください。続いてウィンドウの状態をどのようにするかを選択します。「復元済み」「最大化」「最小化」の3つから選ぶことができます。最大化は画面を最大にし、最小化は画面を最小にします。そして、復元済みでは最大化、もしくは最小化した画面サイズを元に戻すことができます。用途に応じて使い分けましょう。

ウィンドウの状態の設定パラメータ画面

4. ウィンドウの表示方法を設定する

ウィンドウの表示方法を設定する

「ウィンドウの表示方法を設定する」方法について確認していきましょう。このアクションを利用することで、ウィンドウの表示非表示を切り替えることができます。

設定画面ではウィンドウの取得方法の設定と表示非表示の選択を行います。ウィンドウの取得方法については「ウィンドウにフォーカスする」に記載しているのでそちらをご参照ください。

ウィンドウの表示方法を設定する設定画面

設定を保存したら実行してみましょう。今回、下図のようにメールの送信テストを行うアプリのウィンドウを取得しています。アクションを実行すると、アプリが非表示になります。

SMPTアプリでの例

ただし、もう一度アプリを新しく起動させると、下図のようにエラーを起こします。これはこのアプリは他のアプリがすでにメールを監視していて自分は監視できないというエラーです。非表示にするだけでは、アプリは終了せず、バックでは動いているということを意識しておきましょう。

SMTPアプリエラー表示

アプリ自体が動いているかどうかはタスクマネージャーから確認できます。実際に確認してみると下図のようにアプリが2つ起動していることがわかります。

タスクマネージャー確認

5. ウィンドウの移動

ウィンドウの移動

「ウィンドウの移動」アクションを使うことでウィンドウを任意の位置に移動させることができます。

下図のように設定画面では、ウィンドウの取得方法と移動する座標位置を設定します。ウィンドウの取得方法については「ウィンドウにフォーカスする」アクションに記載してありますので、そちらをご参照ください。座標の位置はX軸とY軸を設定します。X軸が画面に対して横の軸、Y軸は画面に対して縦の軸となります。この2つを組み合わせることで任意の位置に移動させます。

ウィンドウの移動設定画面

実際に下図のようにグーグルのホーム画面をインスタンスで取得して、横500、縦20の位置に移動させてみましょう。

実行前

実行すると、画面が変わっているのが確認できます。

実行後

6. ウィンドウのサイズ変更

ウィンドウのサイズ変更

「ウィンドウのサイズ変更」ではウィンドウを任意のサイズに変更することができます。設定画面を開くと、最初はウィンドウの取得を行いますが、その後でどのサイズに変更するか指定します。ウィンドウの取得方法については「ウィンドウにフォーカスする」に記載してありますのでそちらをご参照ください。サイズは幅、高さを指定して取得します。

ウィンドウのサイズ変更設定画面

例えば、グーグルのホーム画面を取得して、高さ500、幅500と指定して実行すると、下図のようにグーグルの画面が正方形の形になり、サイズが変更されることが確認できます。

実行例

7. ウィンドウを閉じる

ウィンドウを閉じる

最後に「ウィンドウを閉じる」アクションについて確認しましょう。このアクションのパラメータはひとつだけで、閉じたいウィンドウを取得するだけです。取得方法については「ウィンドウにフォーカスする」に記述しているのでそちらをご参照ください。取得して実行したときに、取得した画面が閉じていれば成功です。

ウィンドウを閉じる設定画面

以上、「UIオートメーション」の「Windows」アクションについての解説でした。このUIをユーザーと同じように使えるのがRPAの最も大きな強みのひとつと言っても過言ではありません。ぜひ使えるようになって自動化できる幅を広げていってください。

→「Power Automate Desktop」の他の操作も見る

執筆者プロフィール

プロフィール画像

伊藤 丈裕

(株)サムテックのシステムエンジニア。応用情報技術者資格保有。
27歳の時、営業から完全未経験で転職。開発とWebマーケティングを担当。得意言語はJavaとJavaScript。

タイトルとURLをコピーしました