業務中の時間泥棒作業を解決したい!
こんにちは、すんすんです🐥
「毎回同じテンプレで送るメール、自動で送れないかな……」
「現場からSharePointに投稿されたExcelの申請書、投稿されたらすぐに通知が来たらいいのに!」
オフィスワークの中で、こんなお悩みを抱えていませんか?
簡単だけど地味に時間を奪われていく業務から大切な時間を守るべく、思い切ってPower Automateを使って業務を自動化し、猫の手も借りたい状態のときに手を貸してくれるような、「お助けキャット」を作ってみました🐈
今回は、「自動化に挑戦してみたいけど、ちょっと難しそう」「エラーが出て心が折れそう……」という方に向けて、実際の作り方と、私が開発中にハマってしまった罠の回避方法を分かりやすくまとめました!
🏆 最終形態(完成したフロー)
すべての罠を乗り越えて完成したフローの姿がこちらです!
- 申請書が投稿されたら、メールで通知してくれるフロー
- 台帳に入力後、Excel上でボタンを押すことでメールを送信してくれるフロー
💭今回実装した機能
今回は、実際の運用をガラッと変えずに効率化するために、大きく分けて2つのシステムを作りました!
-
申請書投稿を検知して通知するシステム
現場の人がSharePointに申請書(Excel)をアップロードしたら、システムが自動で検知して担当者に「申請が来たよ!」と通知するフローです -
ボタンを押してメールを送信するシステム
届いた申請内容を担当者が確認し、Excelの管理台帳から対象の行を選んでボタンを押すだけで、申請者・依頼者へ自動で案内メールを送信し、管理台帳のステータスを「完了」に書き換えるフローです
ここで送信する完了メールは「新規申請」「再申請」で異なる内容のメールを送信出来るように構築していきます。
🧰 今回使用したツール
もともとの管理方法・申請書投稿場所・連絡方法がすべてMicrosoftのAppsを使用したものでしたので、Microsoftの中で自動化できるPower Automateを選択しました!
- Microsoft Excel (Online): 現在使用している管理台帳
-
Power Automate: 自動化の司令塔
※今回、クラウド上のデータ(SharePointやExcel Online)を直接扱うため、PADではなくクラウド版を使用しています) - Office 365 Outlook: 通知とメール送信
- SharePoint / Teams: Excelファイルを保存しておく場所
- Google AI Gemini: 壁打ちの相棒
⚙️ 作成システムの全体像
全体のイメージはこちらです。
【通知システム】
現場がSharePointにファイルを投稿 ➔ 自動検知 ➔ 担当者に通知が飛ぶ!
↓
【メール送信システム】
上長がExcelで対象の行を選択して実行 ➔ 区分(新規/再申請)を自動判別 ➔ 各宛先へ自動メール送信 ➔ Excelのステータスを「完了」に自動更新!
Power Automateの仕組みとして、フローは必ず「1つのトリガー」からスタートするルールになっていますが、今回の業務プロセスは、以下の2つの全く異なるタイミングでシステムを動かす必要があります。
- きっかけA: SharePointに新しい申請書ファイルがアップロードされた時
- きっかけB: 上長がExcelのステータスを「完了」に変更した時
これらは操作する対象(SharePointとExcel)も違えば、発生する時間帯も異なります。
1つのフローには1つのトリガーしか設定できないため、今回2つに分けてフローを作成しました!
別々に分けることで、エラー回避にもつながります👏🏻
① 事前準備(所要時間:10分程度)
まずは、システムが迷子にならないようにExcel側の「台帳(項目)」をきれいに整えておきます。ここが一番大事な土台になります!
Point
Excelの表は、必ず テーブル化(青いシマシマの表) しておいてください。
「セルを結合して中央揃え」を必ず解除しておく必要があります。
また、システムが「今、誰のデータを処理しているか」を1対1で特定できるように、絶対に重複しない「項番(ID)」の列を左端に作っておくのが一番のポイントです。
テーブル作成は「Ctrl+T」で簡単に作成することができます。
今回の主要な列項目はこちら。
- 項番(読み取りデータが被らないようにするため)
- 再(「再」と入っていれば再申請、空欄なら新規と判断します)
- 申請者メールアドレス (メール送信のため)
- 依頼者メールアドレス (メール送信のため)
- ステータス(ここに自動で「完了(送信済)」と書き込ませます)
準備ができたら、いよいよPower Automateを開いて作っていきましょう!
② 通知システムの作り方
まずは「申請書がSharePointにアップロードされたら、自動で検知して通知する」仕組みを作ります。
作成方法(所要時間:15分程度)
最初に、Power Automateを開き、 「作成/Create」 → 「自動化されたクラウドフロー/Automated cloud flow」 を新規作成します。
今回作るフローの名前を入れます。次にトリガー(=起動のきっかけ)になるものを入れるのですが、今回は「ファイルが投稿された(=作成された)タイミングなので、SharePointの 「ファイルが作成されたとき(プロパティのみ) / When a file is created (properties only)」 を選び、Createをクリックします。
選択したトリガーをクリックし、編集画面を開きます。その後、対象の 「サイトのアドレス(=投稿される外側の箱)」 と 「ライブラリ名(=投稿されるフォルダ)」 を指定します。
通常はサイトのアドレス等の枠をクリックすると、接続したいSharePointの場所を指定することができます。
次にアクション(実行すること)を追加します。 「メールの送信 (V2)」 を追加し、件名や通知したい本文を入力します。
V2はHTML形式のメールに標準対応しています。そのため、通常のOutlookのメールと同じように作成されるため、受け取る側にとって親切で分かりやすいメールを作ることができます。
メールの送信 (V2)をクリックすると、送信したいメール内容の編集画面を開くことができます。
ここで、To(宛先)、Subject(件名)、Body(本文)を決めることができます。
Point
ここでただの固定メッセージを送るのではなく、雷マーク(⚡️動的コンテンツ) を活用して、「誰が」「どんなファイルを」アップしたのかを本文に自動で埋め込むのがオススメです!
※今回は「登録者(申請書を投稿した人)」の項目を埋め込んでいます。
【設定の例】
本文:
新しい申請書がSharePointにアップロードされました。
・ファイル名:[ファイル名(拡張子付き)]⚡️
・提出者:[作成者の DisplayName]⚡️▼確認はこちらから
[アイテムへのリンク]⚡️
このように設定しておくと、通知メールのリンクから直接ファイルに飛べるようになるなどメリットがありますので、担当者の確認作業がとてもスムーズになります!
③ メール送信システムの作り方 & ハマった罠
続いて、「選んだ行のデータを読み取って、自動で分岐&メールを送り、Excelを更新する」フローを作っていきます。
作成方法(所要時間:30分程度)
「作成/Create」 → 「インスタント クラウド フロー(Instant cloud flow)」 を選択します。
※Excel上でボタンを押すのは手動のため、インスタントフローを選択します。
フローの名前を入れ、トリガーに Excel Online の 「選択した行に対して / For a selected row」 を選び、Createをクリックします。

追加したFor a selected rowをクリックすると、管理台帳(Excel)の保管場所・Excelファイル等を指定できます。
⚠️ 罠その1 URLコピペでエラー発生
初めて作ったとき、SharePointの場所を指定する欄に、ブラウザからコピーしたながーーいURLを直接ペーストしてしまいました。
すると、システムが「そんなフォルダ見つかりません!」と大混乱して画面エラーで私フリーズ。「接続を修復してください」という警告が出て、設定画面からしばらく抜け出せなくなってしまいました、、、
注意
URLの直接入力はかなり高い確率でエラーが起きます!
もしエラーが起きた場合は、画面一番下の「接続の変更(Change connection)」から自分のアカウントで一度ログインし直して、アクセス権を復活させてあげてください。
気を取り直して、続いてのフローに移ります。
Excel( For a selected row)のすぐ下の+ボタンを押し、アクションに 「条件 (Condition)」 を追加します。
Conditionの設定画面を開きます。
ここで、Excelの 再 列が「再」と同じかどうかを判定させます。
この後、「再」が入っている場合は再申請、それ以外は新規申請という2つルートを作っていきます。
⚠️ 罠その2 分岐が効かない
全部完成した後にテスト実行をしたら、空欄の行(=新規申請)を選んでいるのに、なぜか毎回「再申請」のメールが送られてしまう不具合が起きました。
注意
条件の左箱の手打ちNG
条件分岐を作るとき、左側の箱にキーボードで直接「再」と文字を入力していました。これだとシステムは「文字の『再』と、文字の『再』は同じかな?」と自問自答してしまい、Excelの中身を無視して常にTrue(はい)ルートに進んでしまいます。
左側の箱には必ず、上記写真のような 雷マーク(⚡️動的コンテンツ)から選んだ緑色の「列のアイコン」 をセットしてください。
続いて、先ほど説明したように「再」とそれ以外という2つルートを作っていきます。
True(はい) と False(いいえ) の分岐の中の以下のような+ボタンをクリックし、それぞれ 先ほどと同じ手順で「メールの送信 (V2)」を追加します。
再申請用のメール内容
※宛先を2人設定したい場合は、 To(宛先): 雷マーク(⚡️動的コンテンツ)から 申請者メールアドレス と 依頼者メールアドレス を選び、間を**半角のセミコロン( ; )**で繋ぎます。
最後に、メールの下(合流したところ)に、Excel Online の 「行の更新 / Update a row」 を追加します。行が更新されたことを検知することができます。
編集画面を開き、上から4つ目までは、For a selected rowと同内容の項目(=管理台帳の保管場所)を選択します。
項番 をキーにして対象の行を特定するために、Key Column(キー列)Key Value(キー値)に目印として「項番」と入れます。
ステータス の欄に手入力で「完了(送信済)」と入れることで、メール送信後に、管理台帳上のステータスが自動で「完了(送信済)」と変更されます。
ここまでできたら、最後に管理台帳のExcel上でメール送信を行いたい人の行を選択したまま、「作業の自動化」を選択します。
「実行」を選択します。
「フローの実行」を選択します。
以下の画面が表示されたら、実行完了です。
少しすると、メールが飛んできました。
こちらは再登録の内容です。
こちらは新規申請の内容です。
どちらも問題なく送信されてきましたね!
🎉 実際に使用してもらった反応
システムが完成した後、実際に業務で使っている上長にテスト運用をしてもらいました!
まずは、申請書が投稿されてきた瞬間通知が届いて、「これはとても助かる!」と喜んでもらえました!
そして、メール送信部分ですが、上長がポチッとボタンを押して数秒後、宛先にしたメンバーのOutlookに綺麗な案内メールがスッと届き、Excelの画面がパッと「完了(送信済)」に切り替わり、こちらも大絶賛してもらえました!
が、しかし、メールを飛ばすには管理台帳にアドレスを入れなければいけないこと、メールを飛ばすにも結局一度ボタンを押す操作が入るので、「この部分の手間も省けたらもっと嬉しいな」というフィードバックもいただきました😊
今後も、通知システムの部分は業務で使用してくださるとのことです。
メール送信部分も、もっと使いやすいシステムを目指していきたいです!
目標の自動化は無事成功!
最初は、すべてが英語表記で画面の見方が分からなかったり、謎のエラーメッセージに頭を抱えたりしましたが、一つひとつ原因を紐解いていくと「そういうことか!」とシステムの仕組みが理解できて、すごく楽しかったです!
もし皆さんも途中でエラーが出たら、まずは「どこで止まっているか」の履歴(ログ)をじっくり見てみてください。答えは必ずそこに書いてあります!
そして何より、自分が作った仕組みで、周りの人が喜んでくれて「業務がラクになった」と言ってもらえて、とても嬉しかったです!
プログラミングができなくても、このように業務に貢献できることがわかり、大きな自信に繋がりました。
今後、フィードバックいただいた部分についても、改修していく予定です!
ここまで読んでいただきありがとうございました!
一緒に業務効率化、がんばりましょう〜!✨


