技術情報ブログ
Microsoft
2024.02.21

【2024年2月更新】Power Automate 初心者 ~ 中級者 向けロードマップ

【2024年2月更新】Power Automate 初心者 ~ 中級者 向けロードマップ
小刀稱知哉

こんにちは。アーティサン株式会社の小刀稱(ことね)です。

Power Automateは、コーディングの知識がなくともお手軽に業務の自動化を行うことができる非常に有用なツールです。

Power Automateをいざ勉強しようと思っても、「何から始めればいいかわからない」という初心者の方に向けて
効率的に学習できるコンテンツを紹介していきます。

また、Power Automateとは何か?という概念的な内容ではなく、実際にサンプルを作成しながら、
Power Automateでできること・できないことを学んでいただけるようなコンテンツばかりです。

さらに、弊社が今まで蓄積してきたPower Automateでフローを作成する際のベストプラクティスなども紹介しています。
実際の現場でもかなり有用な内容となっていますので、中級者の方にもぜひご覧いただきたい内容です。

※本記事は逐次追加していく予定です。(2024年2月追記)

 

Power Automteの基礎を勉強したい方(超初心者)

こんな方におすすめ

  • Power Automateをこれから勉強する方

 

Power Automate:フローの種類とその違い

本ブログでは、Power Automateのフローの種類について紹介しています。
Power Automateを作成するとき、はじめに「どの種類でフローを作成するか?」を選択すると思います。
今回はそれぞれの違いについて説明しています。

 

Power Automate:所有者を変更する方法まとめ

Power Automateを運用していく際、考慮すべき事項として重要なのは、 フローの作成者が異動・退職したときどうすればよいのかという点です。

本ブログでは、フローを次の担当者へ引き継ぐ方法についてまとめています。

フローを運用していく上でとても重要な概念だと思いますので、ぜひ御覧ください。

 

Power Automte入門編:とにかく触ってみたい方(初心者、中級者)

こんな方におすすめ

  • Power Automteでとにかくフローを作成したい方
  • Power Automateで中級者向けのサンプルフローを作成したい方

 

「ExcelデータをSharePointにインポートする」フローの作成

全11回に渡り、Power AutomateでExcelデータをSharePointリストにインポートするためのフローを作成しています。 多くのアクションを使用してフローを作成しておりますので、この連載の内容を実際に試していただくと、 Power Automateの基礎的な部分は一通り学べると思います。

 

Power AutomateでExcel内の値をSharePointリストに転機する際の対応方針を紹介しております。

Excelのテーブルを用いる方法と、Office スクリプトをを用いる方法の2通りを紹介しております。
「Excelの値をPower Automateでも参照したい」という要望はよく伺う内容ですので、こちらを参照にしてください。

 

Power Automateを効率的に作成したい方(初心者、中級者)

こんな方におすすめ

  • Power Automateにていくつかサンプルフローを作成したことがある方
  • 効率的なフローの作成方法を知りたい方

Power Automateの初心者は脱してきたけれど、実際の現場でフローを作成する際には、複数人がフローを作成する場合や修正時のコストを小さくするための工夫が必要となります。

以下では、弊社が今まで蓄積してきたPower Automateに関するベストプラクティスを紹介しています。 実際の現場でもかなり有用な内容となっていますので、ぜひ全てご覧頂きたいです!

 

ローコードアプリ開発者の設計思想

近年、Power AppやPower Automateをはじめとするローコード開発の市場が拡大しています。
それに伴い、ローコードアプリのエンジニアの需要も高まっています。

本記事では「ローコードアプリのエンジニアが、開発を行うにあたり大切にすべき設計思想」について述べています。
ローコードをただ使えるようになっただけでは、DXを進めていくことはできません。
「いかに効率よくアプリを構築できるか」という点について、開発者の設計思想に焦点を絞って記載しています。
ローコード開発者の方に是非読んでいただきたい内容です。

 

アクション名変更に関するメリット・デメリット

Power Automateのアクション名に関する記事です。
何気なくアクション名を変更している方もいると思いますが、実は奥深い内容だったりします。

本記事では、アクション名を変更する・変更しないについてそれぞれのメリット・デメリットを記載しています。
また、それぞれの場合において、守っていただきたいポイントも記載しています。

 

変数を用いて、効率の良いフローを作成する

Power Automateにてフローを作成する際、「条件」アクションなどを用いて分岐を作成することがあると思います。
その際に、各分岐の先で類似アクションを入れていませんか?
(例:承認の可否に応じて、送信するメールの内容を変更する)

修正コストが小さいフローを作成するためには、類似アクションはなるべく共通化することをお勧めします。
本記事では、類似アクションを共通化させるためのノウハウを記載しています。

 

「データを取得する」アクションを用いて、効率の良いフローを作成する

トリガーアクションで得た情報を後続のアクションで使用する場合、 2つのアクションの間に「データを取得する」アクションを追加すると、修正コストの小さいフローを作成することができます。

本記事では、「データを取得する」アクションの有無によって、どのような違いがあるのかについて実例を示しながら説明しています。

 

アクションの入れ子を回避

Power Automateでフローを作成すると、アクションが入れ子(イメージ:If文の中に、更にIf文が存在する)となってしまうことがあります。
フローの挙動としては問題ないですが、アクションの入れ子が多くなると、フロー全体を把握することが難しくなるため可読性が低下します。

そこで、本記事では「終了」アクションを活用することで、アクションの入れ子を回避する方法についてご紹介します。

 

不要な「Apply to each」を回避する方法

Power Automateでフローを作成していると、「Apply to each」アクションが自動的に追加された経験はありませんか?
Power Automateでは配列内の項目を取得する場合、自動的に「Apply to each」アクションが追加される仕様となっています。
しかし、形式は配列になっているものの、取得する値は1つであることが明確である場合、わざわざ「Apply to each」アクションを使用する必要はありません。

本記事では、不要なApply to eachを回避すべき理由と、実際の回避方法について記載しています。

 

トリガー条件を用いて、不要なPower Automateフローの起動を防ぐ方法

SharePoint内にある決まった名称のファイルを保存した場合のみ、Power Automate フローを起動したいことがあります。

SharePoint内にファイルが保存された際に起動する「フォルダー内でファイルが作成または変更されたとき」アクションは、 設定したドキュメントライブラリ内にどのようなファイルが作成・変更されても起動する仕組みです。
このままでは、特定のファイル以外が作成・変更された場合もPower Automateフローが起動してしまいます。

本記事では、不要なPower Automateフローの起動を防ぐため、
トリガー条件を用いて、「ある決まった名称のファイルが作成・変更された場合のみ、Power Automateフローを起動させる」ための方法について説明しています。

 

「スコープ」アクションの使い所と、応用的な活用方法

Power Automateでフローを作成していると、段々とアクション数が多くなって、フロー全体の可読性が下がってしまいます。 このような際、スコープアクションを用いると、複数のアクションをまとめることが出来るため、可読性を向上させることができます。

また「エラー発生時、その内容を保持したい」や「エラー発生の有無に関わらず、処理を実行したい」という要望もあると思います。 このような要望に対しては、スコープアクションを用いた例外処理(try catch finally)を実装することで対応できます。
本記事では、それぞれの実装方法について説明しています。

 

 

Power Automate作成中に発生した問題点と解決策を知りたい方(中級者)

こんな方におすすめ

  • フローの作成中に発生した問題点とその解決策を知りたい方

Power Automateにてフローを作成していく際、さまざまな問題に直面します。
以下では、弊社メンバーが実際に直面した問題やその回避策についてまとめています。

 

「HTTP」アクションを活用して、フローを呼び出す方法

実際の現場において、「エンドユーザーが、任意のタイミングでフローを手動実行したい」という要望を頂くことがあります。
通常このような場合、トリガーにフローボタンを設定して、モバイルアプリのボタン画面から押してもらえば解決すると思いますよね。
しかし残念ながら、ソリューション内で作成したボタンは、モバイルアプリではボタンが表示されないのです。

また、「子フローの実行」アクションを使用する方法も考えられます。
しかし、クラウドフローでは「子フローの実行」アクションを使用できません。
このアクションを使用できるのはソリューション内のフロー同士のみです。

よって本記事では、HTTPアクションを用いて、ソリューション内に作成したフローを外部(クラウドフロー)から呼び出す方法について説明しています。
HTTPアクションとHTTP応答の要求アクションを使用するので、HTTPアクション使ってみたいけどよくわからない…という方も本記事を参考にしてください。

 

選択肢列や参照列のデータを取得する方法

Power Automateでは「動的なコンテンツ」を指定すると、取得したデータの列情報を得ることができます。
しかし選択肢列や参照列については、「動的なコンテンツ」で指定しても表示名ではなく内部のID等、想定と違う情報を取得する場合があります。

本記事では、Power Automateで選択肢列や参照列のデータを取得する方法について説明しています。

何故「動的なコンテンツ」で取得出来ないのか、順を追って説明していますので、すごくわかり易い内容です。
(私もこの記事を読んで勉強させてもらいました(笑))

 

Excelファイルを動的に取得する方法

Power AutomateにてExcelデータを扱う場合、そのExcelが事前に保存されていれば、簡単にフローを作成できます。
しかし実際の運用では、動的にExcelデータを取得したい場合があります。
(例:メールに添付されたExcelデータを自動的にインポートしたい場合など)

ファイルIDやテーブルIDはSharePointに保存された段階で初めて値が設定されるため、 上記要望のように、「フロー内でSharePointにExcelデータを保存し、そのデータを利用する」というフローを作成する場合、 フロー内の設定項目として、事前にファイルIDやテーブルIDを設定することができません。

よって本記事では、フローの中で動的にファイルIDやテーブルIDを取得する方法について説明しています。
Microsoft Graph REST APIの使い方についても説明していますので、使い方がよくわからないという方も本記事を参考にしてください。

 

256行以上のExcelデータを扱う方法

Excel表データから各値を取得するためには、「表内に存在する行を一覧表示」アクションを用います。
しかし、このアクションは、標準では256行分の行データしか取得することができません。

本記事では、256行より大きい表データがある場合の対応策について説明しています。
Excel表データから大量のデータを取得したい場合に参考にしていただきたい内容です。

 

承認のリマインド機能を実装するための対応方針

Power AppsやPower Automateを用いて申請・承認を行うアプリは要望の多いアプリの1つです。
アプリを作成する際、「承認忘れを防止するために、リマインド機能を実装できないか?」と要望を頂くことがあります。

本記事では、Power Automateを用いて承認のリマインド機能を実装するための対応方針を説明します。
3パターンの対応方針とそれぞれのメリット・デメリットを記載しておりますので、皆様の環境に応じて使い分けてください。

 

メール送信時にメッセージIDを取得する方法

Power Automateでフローを作成する際、「あるフローでメールを送信し、別のフローでそのメールに返信したい」という要望はありませんか?

Power Automateでメールを返信する際、「メールに返信する」アクションを用います。
また、このアクションを用いる際は、「メッセージID」が必須となります。

このメッセージIDですが、Power Automateでメールを受信した際には取得することができますが、Power Automateからメールを送信した際には取得することはできません。
そこで、本記事ではPower Automateでメールを送信した際にメッセージIDを取得する方法についてお伝えします。

 

複数(動的)の添付ファイルをメールで送信する方法

Power Automateでは、メールを送信する際、ファイルを添付することができます。
添付するファイル数が決まっている場合は、簡単に実装できますが、添付ファイル数が都度異なる(動的である)場合は、一工夫が必要となります。

本記事では、Power Automateで複数(動的)の添付ファイルをメールで送信する方法について說明します。
また、「メールの送信」アクションと「承認」アクションでは、実装方法が異なりますので、併せてご紹介します。

 

Power Automate:「メールの送信」アクションの差出人まとめ(SharePoint リスト編)

Power Automate で「メールの送信」アクション用いる際、差出人を意識したことはありますか?

共有メールボックスを用いて差出人を変更することはできますが、本記事では基本的な部分に立ち戻り、
「結局差出人って誰が設定されるの?」についてまとめてみました。

「メールの送信」アクションを用いるシーンはよくあると思いますので、参考にしてください。

 

Power Automate:メールの送信元まとめ(Power Apps編)

1つ上の記事の Power Apps 編です。

Power Apps にボタンを配置し、ボタンを押したら Power Automate を起動させるという機能はよく利用されると思います。
その際に、メールの送信元って結局どうなるんだっけ?ということについてまとめました。

 

削除した Power Apps・Power Automate の復元方法

Power Automate を作成している際、誤って削除したことはありませんか?

削除してしまうと、Power Automate の一覧画面から復元することはできません。 しかし、PowerShell を用いると、復元することは可能です。

本記事では、削除した Power Apps・Power Automate の復元方法について説明しています。

 

Power Automate:SharePointリスト・ビューを非表示にする方法

以前、「SharePoint のビューに擬似的なアクセス制限をかける方法」という記事を作成いたしました。

上記記事の中で、SharePoint リストをサイトコンテンツから非表示にする方法や、SharePoint リストのビューを非表示にする方法について、紹介しました。

上記では PnP PowerShell を用いましたが、PowerShell は管理者以外の方は少しハードルが高いと思いましたので、 本記事ではPower Automate を用いて SharePoint リスト・ビューを非表示にする方法を紹介しています。

 

Power Automate×SharePoint:SharePoint上からPower Automateを実行する方法

SharePoint上からPower Automateを実行できることをご存知ですか?

標準であれば、SharePointリストやライブラリのアイテム横の3点リーダー自動化対象のフロー名(以下では「データのコピー」という名前)を選択することで、Power Automateを実行できます。
しかし標準の実行方法では、フローを実行するまでの手順が多いため、フローの存在を知らない人は実行することが難しいのではないでしょうか。

本記事では、SharePointリストにボタンを配置し、ボタン押下時にPower Automateを実行する方法について紹介します。

 

【Power Automate】concat関数の文字数制限の境界値でエラーを発生させてみた

Power Automateには文字列を結合する関数として、concat 関数がありますが、文字列を結合する際の制限があることをご存知でしょうか。
※公式リファレンスには「この結果の長さは 104,857,600 文字以下にする必要があります。」と記載があります。

Azure Logic Apps および Power Automate のワークフロー式関数のリファレンス ガイド concat

そこで本記事では、実際には何文字までいけるのかを検証しています。

 

Power Apps・Power Automate:開発と本番環境を用いたアプリ構築手法

Power AppsやPower Automateでアプリを作成する際、開発と本番環境を分けて運用したいという要望を多く伺います。

2つの環境を分けることで、開発環境での対応が本番に影響を与えないため、開発者としてのメリットが大きいのではないでしょうか。
(実際にシステム開発を行う際には、従来から環境を分離することが一般的です。)

そこで、本ブログは全3回に渡り、Power Platformにおける開発と本番環境を用いた開発手法について紹介します。

開発環境の概念や必要なライセンス、環境構築手順、パイプラインを用いたCI/CD環境の構築など詳細に記載しておりますので、とても有用な内容となっているかと思います。 ぜひご一読ください。

 

Power Automate で時間外の通知は行わない! やさしい通知のススメ

Power Automateにて、「共有メールボックスにメールが届いたらTeamsで通知する」「Power Automate の承認フローが回ってきたらTeams で通知する」というような仕組みってよくあると思いますが、どんな時間でも通知しているフローって心づかいや優しさが足りないと思いませんか?

本ブログでは、就業時間内で通知する方法について紹介しております。

 

Power Automate×SharePoint:ドキュメントライブラリ上のファイル名でフィルタークエリを使う方法

Power Automateを用いて、SharePointドキュメントライブラリ上のファイルをフィルター(検索)したい場合があると思います。

上記を実装する場合は、Power Automateの「ファイルの取得(プロパティのみ)」アクションのフィルタークエリを使用します。
しかし、フィルタークエリに”{Name}”や”{FilenameWithExtension}”を用いることはできません。

そこで本ブログでは、小ネタとして「ドキュメントライブラリ上のファイルをフィルターする方法」についてお伝えします。

 

Power Automate×SharePoint:3つ以上の項目でソートするビューを作成する方法

SharePointのビューを作成する際、アイテムの並べ替え(=ソート)を行うことができます。

ただし、ビューの編集画面からは、最大で2つの項目までしか並べ替えをすることができません。

そこで本ブログでは、Power Automateを用いて「3つ以上の項目でソートするビューを作成する方法」についてお伝えします。

Power Platform(SharePoint・Power Apps・Power Automate)に関する営業活動や設計、開発などを担当:小刀稱知哉

小刀稱知哉

大分県出身(温泉大好き)、現在は東京都在住

1990年生まれ

30才でメーカーの技術営業からIT業界にジョブチェンジ!!!

趣味は読書

Power Platform(SharePoint・Power Apps・Power Automate)に関する営業活動や設計、開発などを担当しております!

持ってる資格はPL-200/PL-300/PL-400/PL-600/MS-700/AZ-104/AZ-305/SC-200

シェアする
記事カテゴリ
最新記事
2024.11.20

【小ネタ】Power Automate×SharePoint:ファイルやフォルダを削除する方法(ゴミ箱・完全削除)

2024.11.06

Power Automateのベストプラクティス・アンチパターン(7)【エラー発生時、管理者へ通知する方法】

2024.10.23

【内製化支援ツール】Power Platform Advisor の紹介

2024.10.09

非エンジニア【(元)自治体職員】が自治体のDX推進リーダーに任命されたつもりで、Power Platformの活用を考えてみた

2024.09.18

Power Automateのベストプラクティス・アンチパターン(6)【Power Automate上でExcelファイルを編集する際の注意点】

モデル駆動型アプリPower AppsPower PlatformSharePointExcelPower AutomateC#attributevalidationローコードAngularAccessInfoPathMatTableAngular Materialデータ構造SortByColumns関数TypeScriptHTMLEF CoreマイグレーションFramework CoreAttribute directivesO/Rマッパーazure sql databaseCase式HTTP RequestCSSxUnit.Net Core 3.1VSCode.Net Core Test ExplorerDataverse for Teamsitem関数Google MapsMarker ClustererRANK()関数Dynamics 365 SalesMicrosoft TranslatorマーカークラスタリングライブラリtailwindcssマルチテナントドロップダウンメニューBreakpointObserverメディアクエリスマホPCレスポンシブ入門初心者中級者キャンバスアプリDatePickerDropdownviewビューアクセス制限承認リマインドSetForAllUpdateContextロードマップ技術It情報技術メッセージIDメールfirst()関数nest入れ子動的リストcollectionコレクション複数の添付ファイル承認フローformエクスポートインポートカスタマイズcomponentダイアログコンポーネントdialogTips新機能変数検索Microsoft 365グループセキュリティグループ送信元メールの送信差出人インスタントクラウドフロー自動化したクラウドフロー委任VBAエラーエクセルerror復元restorePower BI個人列ユーザー列SharePoint Onlineリスト非表示アプリ[市民開発者構築自動化したクラウド フローフローの種類インスタント クラウド フロースケジュール済みクラウド フローレスポンシブ レイアウトresponsive layoutデータ行の制限引き継ぎ退職所有者を変更異動LoopMicrosoftdesignJSONデザイン運用選択肢列参照列ChatGPTOpenAIオープンAIチャットGPTgalleryギャラリースクロールコンテナショートカットキーshortcut keyconcat関数文字制限フロー実行開発環境環境本番環境ライセンス環境構築手順pipelineCI/CDパイプラインDevOpsMicrosoft 365簡易在庫管理時間外通知ファイルフィルター クエリドキュメント ライブラリfilter querysortソートmultiple item複数項目シェアポイント便利機能カレンダーCalendarTeamsローコード開発非エンジニア体験談勉強内製化市民開発管理ガバナンスerror notificationエラー通知削除フォルダゴミ箱完全削除
PageTop
ページトップに戻る