Power Automateで「承認フロー」を作る方法:紙やメールをなくして決裁をスピードアップ!
「稟議書や申請書を回すのに、紙の書類を探したり、メールで催促したりするのが本当に手間だな…」「出張や休暇の申請があった時に、上司に自動で承認依頼が行って、すぐに結果がわかると便利なんだけど…」「決裁の状況が今どこにあるのか、一目で分かるといいな」
こんな風に感じたことはありませんか? 会社で必要な「承認(アプルーバル)」のプロセスは、非常に多く存在します。しかし、それが手動で行われていると、書類が紛失したり、担当者が不在で滞ったり、現在の状況が分からなくなったりと、業務の大きなボトルネックになることがあります。
Microsoft Power Automate(パワー・オートメイト)を使えば、プログラミングの知識がなくても、簡単に「承認フロー」を作成できます。これにより、紙の書類や煩雑なメールのやり取りをなくし、承認プロセス全体を自動化し、決裁のスピードと透明性を劇的に向上させることが可能です。
Power Automateで「承認フロー」を作るってどんなこと?その大きなメリット
Power Automateで「承認フロー」を作る、とは、特定の申請や作業が発生した際に、承認者への依頼、承認状況の管理、そして承認結果に応じた後続の処理(例えば、ステータスの更新や通知)までの一連の流れを、ウェブ上で自動的に実行する仕組みを構築することです。
なぜ「承認フロー」を自動化するのか?その具体的なメリット
承認フローをPower Automateで自動化することには、たくさんの良い点があります。
- 決裁スピードの劇的向上: 手動で書類を回したり、メールを作成したり、電話で催促したりする手間が一切なくなります。申請があった瞬間に自動で承認依頼が飛び、承認者はメールやTeams(チームズ)から直接「承認」や「却下」のボタンを押すだけで済みます。これにより、決裁までの時間が大幅に短縮され、業務全体のスピードアップに貢献します。
- ペーパーレス化とコスト削減: 紙の申請書を印刷したり、保管したりする必要がなくなります。これにより、紙代、印刷代、郵送費、保管スペースといったコストを削減できます。また、手書きの記入ミスや、書類の紛失といったリスクもなくなります。
- 承認状況の「見える化」と透明性: 承認フローの現在の状況(誰のところで承認が止まっているか、いつ承認されたか、却下された理由など)が、Power Automateの実行履歴や、関連するSharePoint(シェアポイント)のリストなどから一目で確認できるようになります。これにより、「今どこにあるの?」という問い合わせが減り、プロセスの透明性が高まります。
- ヒューマンエラーの削減とコンプライアンス強化: 承認経路の誤り、依頼の漏れ、承認忘れといった人為的なミスを防ぎます。また、承認の履歴が自動的にデジタルデータとして記録されるため、後から監査を行う際の証跡としても活用でき、コンプライアンス(法令遵守)の強化にも繋がります。
- 場所やデバイスを選ばない柔軟性: 承認依頼はメールやTeamsのアプリに届くため、承認者は会社のパソコンだけでなく、自宅のパソコン、スマートフォン、タブレットなど、インターネットにつながっていれば、場所やデバイスを問わず、いつでもどこからでも承認作業を行うことができます。これにより、承認者が不在であっても、決裁が滞ることがありません。
承認フローの基本的な「骨組み」:3つの主要ステップ
Power Automateで承認フローを作成する際、どんなに複雑な承認プロセスでも、基本的には以下の3つの主要なステップで構成されます。
1. トリガー(Trigger):承認フローが動き出す「きっかけ」
- これは、承認フローが自動的に開始される「合図」や「イベント」のことです。
- 代表的なトリガー例:
- 「SharePointリストに新しい申請が追加されたとき」:経費申請、休暇申請、備品予約などがSharePointリストに入力された時。
- 「Microsoft Forms(フォームズ)で新しい回答が送信されたとき」:Webフォームから申請が行われた時。
- 「Power Apps(パワー・アップス)のボタンが押されたとき」:自作アプリのボタンから申請を送信した時。
- 「特定のキーワードを含むメールが届いたとき」:特定のメールをきっかけに承認を開始したい時。
2. 「承認を開始して待機する」アクション:承認依頼と待機
- これが承認フローの「心臓部」となるアクションです。トリガーによってフローが開始された後、このアクションが承認者に対して承認依頼を送信し、承認者が応答するまでフローを一時停止させて待ちます。
- 主な設定項目:
- タイトル: 承認依頼の件名です(例:「休暇申請の承認依頼」)。
- 割り当て先: 承認を依頼する相手(承認者)を指定します。
- 詳細: 承認依頼の本文です。申請内容の詳細や、SharePointリストの項目へのリンクなどを含めます。
- 承認の種類: 複数の承認者がいる場合、「誰か一人が承認すれば良いのか(最初の応答を待機)」、それとも「全員が承認しなければならないのか(すべての応答を待機)」を設定します。
3. 「条件」アクションと「結果に応じた処理」:承認結果の分岐と後続処理
- 「承認を開始して待機する」アクションが完了すると、承認者からの「承認」または「却下」という応答がフローに戻ってきます。この応答に応じて、次に実行する処理を「条件」アクションで分岐させます。
- 「はい」のパス(承認された場合):
- 申請が「承認済み」になったことを示すために、SharePointリストの「承認状況」列を「承認済み」に更新します。
- 申請者や関係者に「承認されました」という通知メールやTeamsメッセージを送信します。
- 次の業務プロセス(例:備品の準備、休暇の登録、支払い処理など)を開始します。
- 「いいえ」のパス(却下された場合):
- 申請が「却下」されたことを示すために、SharePointリストの「承認状況」列を「却下」に更新します。
- 申請者に「却下されました」という通知メールを送信し、承認者からのコメント(却下理由)を伝えるようにします。
- 必要に応じて、申請者への再申請を促す、といった後続処理を行います。
Power Automateでシンプルな承認フローを作成する具体的な手順(SharePointリスト申請の例)
ここでは、SharePointリストに新しい申請が追加されたら、自動で上司に承認依頼を送り、その結果をリストに反映させる、という最も一般的な「承認フロー」を例に、具体的な作成手順をステップバイステップで解説します。
事前準備:SharePointリストの作成
まず、申請内容を記録するためのSharePointリストを準備します。
- ウェブブラウザで、承認フローを作りたいSharePointサイトにアクセスします。
- サイトの「+新規」から「リスト」を選択し、「空白のリスト」を作成してください。リスト名に「休暇申請」など、分かりやすい名前を入力して「作成」します。
- このリストに、以下の「列(カラム)」を追加します。
- 「タイトル」(これは既定で存在する列なのでそのまま利用): 申請の件名(例:〇月〇日休暇申請)
- 「申請者」: 「+列の追加」から「ユーザー」を選択し、名前を「申請者」とします。
- 「開始日」: 「+列の追加」から「日付と時刻」を選択し、名前を「開始日」とします。
- 「終了日」: 「+列の追加」から「日付と時刻」を選択し、名前を「終了日」とします。
- 「理由」: 「+列の追加」から「複数行テキスト」を選択し、名前を「理由」とします。
- 「承認状況」: 「+列の追加」から「選択肢」を選択し、名前を「承認状況」とします。選択肢として「申請中」「承認済み」「却下」の3つを追加し、既定値(デフォルト)を「申請中」に設定します。
この「休暇申請」リストに新しいアイテム(申請情報)が追加されることが、今回のワークフローの「トリガー」となります。
ステップ1:Power Automateで新しいフローを作成する
- ウェブブラウザでPower Automateのサイト(https://www.google.com/search?q=make.powerautomate.com)にアクセスし、あなたのMicrosoft 365アカウントでサインインします。
- 左側のメニューから「作成」をクリックします。
- 表示されるフローの種類の選択肢の中から「自動化したクラウド フロー」を選択してください。これは、特定のイベント(今回はSharePointリストへのアイテム作成)をきっかけに自動で実行されるフローです。
- フローに分かりやすい名前を付けます(例:「休暇申請承認フロー」)。
- 「フローのトリガーを選択してください」の検索ボックスに「SharePoint」と入力します。
- 表示されたトリガーの中から、「項目が作成されたとき (SharePoint)」を選択します。
- 「作成」ボタンをクリックします。
ステップ2:SharePointトリガーを設定する
作成したフローの最初のステップ(トリガー)の詳細を設定します。
- 「項目が作成されたとき」というトリガーのアクションボックスが表示されます。
- 「サイトのアドレス」: 先ほど作成した「休暇申請」リストがあるSharePointサイトのURLを、ドロップダウンから選択するか、直接入力します。
- 「リスト名」: サイト内のリストの中から、先ほど作成した「休暇申請」リストを選択します。
ステップ3:承認者(申請者の上司)を取得する(実用的な応用)
承認フローでは、通常、申請者の直属の上司に承認を依頼したい場合が多いでしょう。Power Automateは、ユーザープロファイルサービスと連携して、申請者の上司情報を取得できます。
- 「項目が作成されたとき」トリガーの下にある「新しいステップ」をクリックします。
- 検索ボックスに「ユーザープロファイル」と入力し、「ユーザープロファイル (V2) の取得」アクションを選択してください。
- 「ユーザー (UPN)」: ここには、SharePointリストにアイテムを作成した「申請者」のユーザープリンシパル名(UPN、通常はメールアドレス形式)を入力します。入力フィールドをクリックすると、「動的なコンテンツ」というウィンドウが表示されますので、その中から「項目が作成されたとき」セクションの「作成者メール」を選択します。
- 「ユーザープロファイル (V2) の取得」アクションの下に「新しいステップ」をクリックします。
- 検索ボックスに「マネージャー」と入力し、「マネージャーの取得 (V2)」アクションを選択してください。
- 「ユーザー (UPN)」: ここには、先ほど「ユーザープロファイル (V2) の取得」アクションで取得した「マネージャー」の「ユーザープリンシパル名」を動的なコンテンツとして選択します。これで、申請者の直属の上司の情報を取得できるようになります。
ステップ4:「承認を開始して待機する」アクションを追加する
いよいよ承認依頼を上司に送信し、その応答を待つアクションを追加します。
- 「マネージャーの取得 (V2)」アクションの下にある「新しいステップ」をクリックします。
- 検索ボックスに「承認」と入力し、「承認を開始して待機する (V2)」アクションを選択してください。
- 承認アクションの詳細を設定します。
- 「承認の種類」: ドロップダウンから「最初の応答を待機」を選択します。これにより、複数の承認者が設定されていても、誰か一人が承認または却下すればフローは次に進みます。
- 「タイトル」: 承認依頼の件名です。動的なコンテンツを活用して分かりやすくします。例えば、「休暇申請の承認依頼:@{triggerOutputs()?[‘body/Title’]}(申請者:@{triggerOutputs()?[‘body/Author/DisplayName’]})」のように入力します。
- 「割り当て先」: 承認を依頼する相手(承認者)を指定します。ここには、ステップ3で「マネージャーの取得 (V2)」アクションで取得した「マネージャーのメール」を動的なコンテンツとして選択します。
- 「詳細」: 承認依頼の本文です。申請の詳細情報を記載し、承認者が内容を理解しやすいようにします。例えば、以下のように入力し、動的なコンテンツを挿入します。
以下の内容で休暇申請がありました。ご確認の上、承認または却下してください。 ・申請タイトル: @{triggerOutputs()?['body/Title']} ・申請者: @{triggerOutputs()?['body/Author/DisplayName']} ・利用開始日: @{triggerOutputs()?['body/StartDate']} ・利用終了日: @{triggerOutputs()?['body/EndDate']} ・理由: @{triggerOutputs()?['body/Reason']} 申請の詳細はこちらから確認できます: @{triggerOutputs()?['body/{Link}']}(@{triggerOutputs()?['body/Title']})@{triggerOutputs()?['body/{Link}']}はSharePointアイテムへのリンクです。(表示名)とすることで、リンクの表示名を付けることができます。\nは改行を表します。
- 「アイテムへのリンク」: 申請されたSharePointリストアイテムへの直接リンクを挿入できます。動的なコンテンツから「アイテムへのリンク」を選択します。
- 「アイテムのリンクの説明」: リンクの表示名です(例:「申請の詳細を見る」)。
ステップ5:承認結果に応じて処理を「条件」で分岐させる
承認者が「承認」または「却下」のどちらを選んだかによって、フローのその後の処理を分岐させます。
- 「承認を開始して待機する (V2)」アクションの下にある「新しいステップ」をクリックします。
- 検索ボックスに「条件」と入力し、「条件」アクションを選択してください。
- 条件のアクションボックスを設定します。
- 左側のボックスにカーソルを置き、動的なコンテンツから「承認を開始して待機する (V2)」アクションの「応答」(承認者の「承認」または「却下」の選択結果)を選択します。
- 中央のドロップダウンで「次に等しい」を選択します。
- 右側のボックスに「承認」と正確に入力します。(「承認」という単語は、承認フローで自動的に生成されるボタン名に対応しています。)
ステップ6:承認された場合の「はい」のパスを設定する
条件アクションで「はい」(承認された場合)のパスに、実行したい処理を追加します。
- 「条件」アクションの「はい」のパスにある「アクションの追加」をクリックします。
- 検索ボックスに「SharePoint」と入力し、「項目を更新します (SharePoint)」アクションを選択してください。
- 更新アクションの設定を行います。
- 「サイトのアドレス」: 「休暇申請」リストがあるSharePointサイトのURLを再度選択します。
- 「リスト名」: 「休暇申請」リストを再度選択します。
- 「ID」: 更新したいリストアイテムのIDです。動的なコンテンツから「項目が作成されたとき」トリガーの「ID」(申請されたアイテムのID)を選択します。
- 「タイトル」: これは必須項目なので、動的なコンテンツから「項目が作成されたとき」トリガーの「タイトル」をそのまま選択します。
- 「承認状況」: ドロップダウンから「承認済み」を選択します。
- 次に、承認されたことを申請者に通知するメールアクションを追加します。上記で設定した「項目を更新します」アクションの下に「新しいステップ」を追加します。
- 検索ボックスに「Outlook」と入力し、「メールを送信する (V2)」アクションを選択してください。
- 「宛先」: 動的なコンテンツから「項目が作成されたとき」トリガーの「作成者メール」(申請者のメールアドレス)を選択します。
- 「件名」: 「承認されました:@{triggerOutputs()?[‘body/Title’]}」のように入力します。
- 「本文」: 「あなたの休暇申請は承認されました。\n詳細:@{triggerOutputs()?[‘body/{Link}’]}」のように入力します。
ステップ7:却下された場合の「いいえ」のパスを設定する
条件アクションで「いいえ」(却下された場合)のパスに、実行したい処理を追加します。
- 「条件」アクションの「いいえ」のパスにある「アクションの追加」をクリックします。
- 承認された場合と同様に「項目を更新します (SharePoint)」アクションを追加してください。
- 「サイトのアドレス」: SharePointサイトを選択します。
- 「リスト名」: 「休暇申請」リストを選択します。
- 「ID」: 「項目が作成されたとき」トリガーの「ID」を選択します。
- 「タイトル」: 「項目が作成されたとき」トリガーの「タイトル」をそのまま選択します。
- 「承認状況」: ドロップダウンから「却下」を選択します。
- 次に、却下されたことを申請者に通知するメールアクションを追加します。上記で設定した「項目を更新します」アクションの下に「新しいステップ」を追加します。
- 検索ボックスに「Outlook」と入力し、「メールを送信する (V2)」アクションを選択してください。
- 「宛先」: 動的なコンテンツから「項目が作成されたとき」トリガーの「作成者メール」を選択します。
- 「件名」: 「却下されました:@{triggerOutputs()?[‘body/Title’]}」のように入力します。
- 「本文」: 「あなたの休暇申請は却下されました。\n理由:@{outputs(‘承認を開始して待機する_(V2)’)?[‘body/responses’][0]?[‘comments’]}\n詳細:@{triggerOutputs()?[‘body/{Link}’]}」のように入力します。
outputs('承認を開始して待機する_(V2)')?['body/responses'][0]?['comments']は、承認者が却下時に記入したコメントを取得するための式です。'承認を開始して待機する_(V2)'の部分は、あなたのフローの承認アクションの正確な名前に置き換えてください。
ステップ8:フローを保存してテストする
すべての設定が完了したら、フローを保存してテストしましょう。
- 画面右上の「保存」ボタンをクリックします。フローが保存されると、エラーがないかどうかのチェックも自動で行われます。
- 「テスト」ボタンをクリックします。
- 「手動」を選択し、「テスト」を開始します。
- 新しいWebブラウザタブを開き、先ほど作成したSharePointの「休暇申請」リストに、新しいアイテム(申請)を追加します。
- アイテムを作成すると、Power Automateのフローが起動し、承認者に承認依頼が送信されます。承認者はOutlookの承認メールまたはTeamsの「承認」アプリから内容を確認し、「承認」または「却下」を行います。
- 承認者が応答すると、フローが続き、SharePointリストの「承認状況」列が更新され、申請者に結果通知メールが送信されることを確認します。これで、基本的なSharePointの承認ワークフローが完成し、自動で動作するようになります。
承認フローをスムーズに運用するための「大切な注意点」
Power Automateの承認フローは非常に強力ですが、そのメリットを最大限に引き出し、スムーズな運用を実現するためには、いくつかの重要な注意点を理解し、適切に対処する必要があります。
1. 承認者の「アクセス権限」を事前に確認する
承認依頼を受け取る承認者(上司など)が、申請されたSharePointリストや添付ファイル、あるいは承認の判断に必要な情報が格納されている場所に対して、十分な「閲覧」権限を持っていることを必ず確認してください。もし承認者が参照すべき情報にアクセスできないと、承認プロセスが滞ったり、適切でない判断が下されたりする原因となります。承認依頼メールやTeams通知には、関連する情報への直接リンクを含めるようにしましょう。
2. 「承認の種類」を適切に選択する
「承認を開始して待機する」アクションには、「承認の種類」という重要な設定があります。
- 「最初の応答を待機」: 複数の承認者を設定した場合、そのうちの誰か一人でも承認または却下すれば、フローは次に進みます。これは、迅速な決裁が求められる場合に適しています。
- 「すべての応答を待機」: 複数の承認者を設定した場合、設定された全員が応答するまでフローは停止します。全員が「承認」した場合のみフローは承認のパスに進み、一人でも「却下」した場合は却下のパスに進みます。これは、全員の同意が必要な重要な決裁に適しています。
フローの目的に応じて、適切な承認の種類を選択することが重要です。
3. 「承認者の代理」設定を検討する(不在時の対応)
承認者が長期休暇や出張などで不在になる場合、承認プロセスが滞ってしまう可能性があります。このような事態に備えて、承認者はPower Automateの「承認の委任(デリゲーション)」機能を設定することができます。これにより、承認者が不在の期間、指定された代理人が承認依頼を受け取り、代わりに承認を行うことができるようになります。
- 設定方法: Power Automateポータルで、承認者自身が「承認」セクションを開き、設定から「代理人の管理」を行うことができます。
4. 「タイムアウト」設定を活用する(応答がない場合の対処)
承認依頼を送信しても、承認者がなかなか応答しない場合があります。無限に待機し続けるのを避けるために、承認アクションに「タイムアウト」を設定することができます。
- 設定方法: 「承認を開始して待機する」アクションの「設定」を開き、「タイムアウト」を設定します。例えば、「P1D」(1日間)や「PT1H」(1時間)のように、応答を待つ最大時間を指定します。
- タイムアウト時の処理: タイムアウトが発生した場合、そのアクションは「タイムアウト」というステータスで失敗します。この失敗を検知して、「申請者に通知する」「別の承認者に転送する」「自動的に却下する」といった代替処理を「構成:実行条件」と「条件」アクションを使って設定することができます。
5. エラーハンドリングを必ず設定する(フローの安定稼働のために)
承認フローは、連携先のサービス(SharePoint、Outlook、Teams)やネットワークの状況によって、予期せぬエラーが発生することがあります。フローが停止してしまうのを防ぐために、必ず「エラーハンドリング」を設定してください。
- 設定方法: 承認アクションや、その後のSharePoint更新アクションなど、失敗する可能性があるステップを「スコープ」で囲みます。そして、そのスコープが失敗した場合にのみ実行されるように設定した「エラー通知」アクション(例: 管理者へのメール通知)を追加します。これにより、問題発生時にすぐに気づき、対応することができます。
6. 通知方法を最適化する(メール、Teams、モバイルアプリ)
承認依頼や結果通知は、承認者や申請者が最も気づきやすい方法で送信することが重要です。
- Outlookメール: 詳細な情報や書式を設定しやすく、添付ファイルを送る場合にも適しています。
- Microsoft Teamsの「承認」アプリ: Teamsを利用しているユーザーにとって、Teamsアプリ内で直接承認・却下できるため、非常に便利で迅速な決裁が可能です。
- Power Automateモバイルアプリ: スマートフォンにPower Automateアプリをインストールしていれば、承認依頼がプッシュ通知で届くため、外出先でも素早く対応できます。
- 推奨: これらを組み合わせて、承認者が最もアクセスしやすい方法で通知を送るように設定することを検討してください。
7. 監査ログと履歴の活用
承認フローの履歴は、Power Automateの実行履歴だけでなく、SharePointリストの「承認状況」列や、場合によってはMicrosoft 365の監査ログにも記録されます。これにより、後から承認プロセスを追跡したり、監査を行ったりすることが可能になります。
Power Automate承認フローで決裁を「早く」「正確に」「透明に」!
Power Automateで承認フローを作成することは、紙やメールのやり取りといった煩雑な作業をなくし、決裁のスピードと透明性を劇的に向上させるための非常に強力な手段です。
- トリガー(申請のきっかけ)から始まり、「承認を開始して待機する」アクションで承認依頼を送信し、その結果に応じて「条件」アクションでその後の処理を分岐させるのが、基本的な骨組みです。
- SharePointリストを申請フォームや進捗管理の基盤として活用すると、より効率的な承認フローが構築できます。
- 承認者の代理設定やタイムアウト設定、そしてエラーハンドリングを適切に行うことで、フローはより堅牢になり、予期せぬ問題にも対応できるようになります。
これらの知識と手順を上手に活用して、あなたの会社の承認プロセスをデジタル化し、よりスムーズで効率的な業務運営を実現してくださいね。

