Power Automate Desktopを使ってみよう

##はじめに

はじめまして。
私は企業の業務システムの改修・保守を行うことが多く、もちろんテストも行います。
テストの中で単純作業を繰り返すことがよくあり、そこは正直つまんないです。
そんなとき、RPA(Robotic Process Automation)で単純作業を自動化し、
それで浮いた労力や時間を...ということをすると日常が楽しくなっていきます。

ふだんはPythonのPyAutoGuiとかでやっています。
が、先日Microsoftからのニュースで
「Power Automate Desktopが無償化」
というものがあって、流行りに乗って試してみました。


##インストール
こちらの記事を参考にさせてもらいました。
https://qiita.com/K2_kzy/items/109fccae160fbb874fad

サクッとインストールしてしまいましょう。
まずこちらからダウンロードします。
https://go.microsoft.com/fwlink/?linkid=2102613

「次へ」をクリック
![fig1.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1266682/6be4f116-a9ad-c107-2cd6-f8398effd1db.png)

チェックボックスをONにして「インストール」をクリック
![fig2.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1266682/b4a43d5d-d42d-7f63-3507-f113c67ce79d.png)

ちょっとだけまって...
![fig3.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1266682/4a92e7e4-f008-90fc-74b5-0cb8b9c92d1e.png)

「Power Automate Desktopを起動」をクリック
![fig4.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1266682/61ba05dc-39d3-a1d6-e4e8-0b6385ea26e3.png)

「サインイン」をクリックしてサインインします。
![fig5.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1266682/fc58d775-0675-0548-2b6c-e5b4da4937fc.png)

言語を選択して「開始する」をクリック
![fig6.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1266682/527646e5-bd8d-fe7b-9bf1-17615724059e.png)

というように流れるようにインストールできました。
![fig7.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1266682/9e1ee79e-dc14-626d-e799-b1294878faae.png)

新規フローを作成すると、いきなり大海に放り出されます。
![fig8.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1266682/7ee294b7-65fc-b67e-e782-9febd4fa29cb.png)

##動かしてみる

ともあれなにかやってみましょう。
サンプルとしてExcelに入力する操作を自動化します。
Excelを新規作成して、シートのA列に数値を入力するようにします。

...なんというか、説明用のサンプルってセンスが出ますね。
私はセンスが無いので、こんなナンセンスな例が出てきます。
それはさておき、、、

アクションの「Excel」の中から「Excelの起動」を画面中央にドラッグ＆ドロップします。(以下「追加」とします)
![fig9.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1266682/06eea4b3-6b78-0ada-1753-1b5e7375c076.png)

すると詳細入力が出てきますが、そのまま「保存」をクリックします。
![fig10.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1266682/f8d84324-b07f-d3c6-b9b4-26ccc30ee1c2.png)

次に繰り返しをしたいので、アクション「ループ」の「Loop」を同じように追加します。
2～500で1ずつ増えるループを定義します。
以下のようにして「保存」します。
![fig11.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1266682/2db947eb-e0c9-711f-4e01-db7ae8aea68c.png)
アクションを組み合わせれば、もっと細やかな制御を行うことができます。

次に「Excelワークシートに書き込み」を先ほどの「Loop」の間に追加します。
![fig12.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1266682/37846117-1634-f07f-3344-454d9bc2ae06.png)

A列(列1)の2行目～500行目に、行番号を入力するようにします。
入力枠の右側にある{x}をクリックするとリストから変数を選択できます。
![fig13.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1266682/43aaf23d-5560-e4ed-a42d-cd08bf6e9f7b.png)

さて、フローを作成したら、実行してみましょう。
画面上側の実行アイコンをクリックします。
![fig14.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1266682/3a347e38-44ad-7004-3dd1-961b7835123e.png)


すると、新規Excelが起動して、なにもしていないのにA列にどんどん数値が入力されていきます。
フローの編集画面から実行すると、ステップ実行のような動作になります。
![fig15.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1266682/8390c23f-7be9-93b1-1f8d-0d0808ae4dda.png)


うまくいったら、(いってなくても)保存しましょう。
ステップ実行不要で高速で操作したい場合は、親のフロー一覧画面から
実行します。

初回は自動実行されるのを見ているのも楽しいですね。
なんかピタゴ○スイッチみたいな感じで。


##おわりに

PyAutoGuiだと、例えばリモートデスクトップで実行したあとに
切断すると停止してしまうのですが、こっちは継続実行できます。
そして、自動実行中も他の作業ができるのがいいですね。

もう少し深堀りして、いろいろな機能を試してみたいと思います。