Power Automate Desktopの使い方やサンプルなどをご紹介した解説記事のまとめです。
Power Automate Desktop向けのドキュメントは専門的な解説コンテンツも多くありますが、ここではできるだけスクリーンショットややさしい使い方の説明などを交えたプログラミング未経験、初心者向けの解説コンテンツをまとめています。
初めてPower Automate Desktopに触れる方やこれからRPAツールでのプロセス自動化にチャレンジしてみたいかたは是非ご覧になってみてください。
本コンテンツの内容については、初めての方に安心してお読みいただけるように、厳密さよりも分かりやすさや伝わりやすさを優先して表現を選択しています。ご了承ください。
また、解説によってはまだまだ難しい書き方をしているものも多く混じっていると思います。内容は日々改善していますので、もしご覧になってみてわかりにくい、こんなことが知りたいなどのご意見ご要望があればぜひお知らせください。
Power Automate Desktopとは
Microsoft Power Automate Desktop(マイクロソフト パワー オートメート デスクトップ / PAD)は、マイクロソフトが提供するRPA(ロボティック プロセス オートメーション / プロセス自動化ツール)のひとつです。
RPA(プロセス自動化ツール)とは、普段は人が行っているようなPCのオペレーションを人の代わりに(ロボットに)行わせるようなことを目的としたソフトウェアです。
一般的なプログラムとは異なり、実際のPCのデスクトップを開いて画面のアイコンをクリックしたり、開いたファイルを目で見るように読み取って、集計した内容を他のファイルに記入したり、メールを送ったりといった人間の作業の代わりになるような操作を自動で制御することができます。
また、自動化を行うためのフローは、画面上に実行したいアクションを視覚的に配置して並べ替えたり、パソコンの操作を録画(記録)してそのステップから自動的にフローを作ったりと、プログラム言語やマクロなどの知識を必要とせずに自動化フローを作り上げられることが大きな特徴となっています。
このようなプログラミング知識を必要とせず、実装の際にプログラムやスクリプト言語などのコードを記述しなくても動作させることができる手法のことを「ローコード開発」「ノーコード開発」などと呼びます。※一般的にはローコード・ノーコード開発はアプリやサービス開発を対象に指して呼ばれることが多いですが、RPAもノーコード・ローコード開発によって画面の自動操作を行う手法のひとつです。
PowerAutomateDesktop(PAD) は Windows 10 向けのデスクトップアプリが公開されており、無償で利用することができます。(参考:インストールからWebサイトをスクレイピングしてみるまでの簡単な使い方)
Power Automate Desktop には企業向け、他サービスとの連携機能などを追加した有償ライセンスもありますが、自動化フローの作成に使うアクションは有償、無償バージョンいずれも同じものが提供されているため、個人利用や小規模なオフィス利用で必要とされる用途のほとんどは無償ライセンスで十分実現することができます。
Power Automate Desktop は、無料で誰でも簡単にローコード開発にチャレンジすることができる便利なプロセス自動化ツールです。
はじめに、Power Automate Desktopでできること
Power Automate Desktopでできることやできないことの解説です。
こちらはPower Automate Desktop(PAD)が提供する機能の羅列ではなく、仕事を自動化するということはどういうことなのか、初めてPADの名前を聞いた方やこれから利用してみようと思う方の視点で、どのような取り組みができるのかをイメージして解説しています。
Power Automate Desktopの使い方
Power Automate Desktopのフロー編集画面の解説や簡単な使い方、Windowsでダウンロードしてインストールし、Webサイトからの情報取得を自動化してみるまでのご紹介です。
なお、Power Automate Desktopは以下のページより無料でダウンロードできます。(マイクロソフトのサイト)
フローの共有
Power Automate Desktopで作成したフローは自由にファイルに保存することができないため、代わり方法を使ってフローを他のユーザーと共有するアイデアです。
本サイトの各解説コンテンツでもこの方法を使って作成したフローのサンプルコードを掲載していますので、実際にお手元のPower Automate Desktopにフローをコピーして動作をチェックしながら学習することができます。
基本的な知識
Power Automate Desktopで基本となる「変数」「ループ処理」「条件分岐」などの解説です。
プログラミングの経験がない方や初めて自動化ツールを利用される方がPower Automate Desktopを学習する際に最初の壁になるのが、これらの要素ではないかと思います。
以下では、Power Automate Desktopでの変数やループ処理、条件分岐についての解説を行っています。
「変数」「ループ処理」「条件分岐」はPower Automate Desktopに限らず、一般的なプログラミングにも共通の重要な要素です。
プログラミングの基礎的な知識にもなりますので、今後プログラミングにチャレンジされたい方もぜひお読みになってみてください。
変数を使う
変数とはデータを一時的にしまっておく箱のようなもの。いろいろなアクションを使うときに作られ、自動的に名前が付けられて管理されますが、自分で管理しやすい名前を自由に命名することもできます。
Power Automate Desktopでは文字や数字を変数として格納し、いろいろなアクションで使いまわすことができるほか、変数どうしをつなげたり、計算を行って新しい変数を作ったりすることができます。
さらに、UI要素(画面上のリンクやテキストボックスなど)やWebブラウザやアプリのウィンドウなども「変数」として扱うことができ、ウィンドウの状態変化を調べてフローを分岐させたり、プログラムの起動や終了を行ったりもできます。
プロパティを使う
プロパティとは、変数などがもつ設定や属性に関する情報のこと。
Power Automate Desktopでは例えば文字列の「文字数」や日付の「曜日」のように、変数のデータから導き出すことができる別の情報を簡単に取り出すための仕組みとして使うことができます。
ループ処理を使う(For、Loop)
ループ処理とは、繰り返し、反復しておこなう処理のこと。
Power Automate Desktopではループアクションを使うことで、たくさんのデータやファイルを処理するために同じ手順の作業を繰り返し実行させることなどができます。
条件分岐処理を使う(If、Switch)
条件処理とは、何らかの判定を行ってその判定が「あてはまる(真)」か「あてはまらない(偽)」かでその後のフローを分岐(条件分岐)させる処理のこと。
Power Automate Desktopでは条件アクションを使うことで、作業の状態などに応じてフローを分岐させることができます。
また、Power Automate Desktopではファイルやフォルダ、ウィンドウの状態などを簡単に判定条件にすることができるPower Automate Desktop独自の条件アクションが複数用意されており、これらを使うことでより簡単に自動化のフローが組み立てられるようになっています。
いろいろなフロー作成の解説(サンプル/テンプレート)
以下は、実際の現場などで想定される自動化フローを必要とするシナリオ(用途)をイメージし、具体的なフローの作り方やアクションの設定方法をサンプルコードなどを交えて説明したPower Automate Desktopのフロー解説コンテンツです。
Webサイトの巡回・スクレイピング・ブラウザ自動操作
ブラウザを自動的に起動し、複数のWebサイトにアクセスしてデータを取得したり、取得したデータをファイルに保存するなど、Webサイトの巡回などを自動化できるフローの解説とサンプルをご紹介しています。
- 楽天APIを使って楽天市場のデータを取得してみる
- 複数のWebサイトを自動巡回してスクリーンショットをキャプチャする
- 楽天市場の在庫復活を定期的に自動チェックする
- Webページを自動的に巡回して取得したテーブルの一覧表をExcelに保存する
- 新しいタブで開かれたブラウザをインスタンス化してコントロールする方法
- スクレイピングした一覧表をcsvで保存する
リストデータの読み取り・繰り返し処理
Excelやテキスト形式のリストを使用して、そのリストの全件に対して繰り返し処理を行うような作業を自動化するためのフローの解説とサンプルをご紹介しています。
テキストの全行を繰り返し処理する
Excelの全行を繰り返し処理する
テキストの加工
テキストから特定の文字を抜き出したり置換したりする文字列をコントロールするアクションについて解説しています。
日付時刻
フォルダ・ファイル処理
フォルダの階層を辿って配下の全ファイルに対する処理を行う場合などのサンプルです。
フォルダ階層を取得するサンプルフローですが単純な再帰処理を利用しているため、一般的な再帰処理のテンプレートとしても応用可能です。
エラー・トラブル
用語集
Power Automate Desktopで使われる用語、プログラミングやRPAなどでも使われる専門用語、関連用語など解説した用語集です。
アイデア(わかる方向けのTips&Hints)
その他、Power Automate Desktopを使ったチャレンジやアイデアなど、活用のヒントになるかもしれないフローやアクションの使い方などを解説しています。
こちらのコンテンツは一部プログラミング知識を前提とした表現や、技術的な前置きがわかる方向けの書き方になっている(あまりかみ砕かずにそのまま書いている)内容が含まれています。
ChatGPTをPADで使う
ChatGPT API(gpt-3.5-turbo)を使って、ChatGPTのAPIをPADのフロー内で利用するサンプルです。
ChatGPTは大規模言語モデルによる自然な文章の生成だけでなく、あいまいなデータの取り扱いやエラーデータの修正などにも長けているため、PADではフローを安定的に動作させたり、これまで扱えなかったデータをより効率的に処理させたりと、自動化のアイデアの幅を大きく広げてくれるツールとなっています。
ゲームを作ってみた
Power Automate Desktopで簡単なゲームを作ってみました。
数字を使った2つのゲームの作り方をご紹介しています。
自動化の手法とはあまり関係ないですが、変数やループの使い方やフローの作り方のアイデアとしてご参考になれば。
無料バージョンで定期的にフローを自動実行するアイデア
Power Automate Desktopの無償版は定期的なスケジュールによる実行や、トリガー(きっかけ)を使ってフローを開始させることができません。
ただ、そのための機能がなくてもPower Automate Desktopのフローの設計の仕方によって経過時間や現在の時刻を判定するなどで、定期的にアクションを進行させるようなことも可能です。
下記ではのPower Automate Desktopのフロー設計のひとつのアイデアとして、スケジュール実行機能の代わりになるようなサンプルフローをご紹介しています。
チャレンジ中のフローなど
さらに知りたい方向け
Robin言語解説&簡易リファレンス
Power Automate Desktopで使用されているRPA言語「Robin Language(ロビン)」について解説しています。
こちらはプログラミングやローコード開発の経験がある方向けの内容となっていますので、Power Automate Desktopの内部動作やRobin言語自体の興味など、より詳しく知りたい方は読んでみてください。
解説動画(YouTube)
Power Automate Desktopの勉強会(解説)動画です。クラベルの解説記事などを一部の教材として利用いただいています。
まとめページは随時更新
本ページはサイトへのページ公開と合わせて随時更新しています。
Power Automate Desktopでのフロー作成に悩んだ際のヒントになる情報があるかもしれないので是非定期的にチェックしてみてください。
また、クラベルではPower Automate Desktopカテゴリからもコンテンツをご覧いただくことができます。フローのサンプルややさしい解説を交えてご紹介していますのでぜひ参考にしてみてください。
お読みくださりありがとうございました。今回の内容が少しでもお役に立てば幸いです。