Power Apps でアプリを作成する？まずは Microsoft 365 の既存のアプリを知ろう


# はじめに

Power Apps や Power Automate の説明会に参加したりハンズオンに参加したりした後、ハッカソン含め、実務で何かを作成しようとする際に案を考えるのですが、そのような際、**「この要件であれば、既存の Microsoft 365 のアプリを使った方がいいのでは？」** と思うことがあります。


当たり前かもしれませんが、**アプリや自動化フローを作成することが業務効率化、改善の目的ではありません。**
そのため、個人的には以下のような流れで検討をしていくのがいいと思います。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3074511/d918a3c1-eb30-1c4c-d408-6cbfbe4d6ca2.png)

上記を踏まえると、Microsoft 365 に備わっている既存のアプリについて、どんなことが出来るアプリなのかを知ることも重要と考えます。


実際、以下の通り、Microsoft 365 には多数のアプリがあり、どんなものかを知り、使いこなすことで業務効率化、改善できるシナリオが沢山あると思います。そのため、今回は、個人的に、Power Apps や Power Automate で業務効率化、改善を検討する前に知っておいた方が良いと思うアプリやその機能について簡単に紹介します。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3074511/c6b46298-6fc5-ef25-bb4d-57e88ce350e8.png)


# Microsoft Teams


Microsoft 365 を契約している場合、既に業務で利用しているケースが多いと思いますが、特定のメンバー間で共同作業を行いたいという場合、わざわざアプリを作るより、Microsoft Teams を利用する方がいいと思います。

https://www.microsoft.com/ja-jp/microsoft-teams/group-chat-software


チャット、会議、通話、ファイル共有等が出来るのはもちろん、例えば、何かのプロジェクト、V-Teams という単位で共同作業したい場合、専用のチームを作成してメンバーを招待して、用途ごとにチャネルを作成し、チャット、ファイル共有するようなことも簡単にできます。

また、Teams はあくまでコミュニケーションのプラットフォームであるため、サードパーティーのアプリはもちろん、以下のような、日程調整をしたり、働き方を共有するような、Power Apps で作成した利用頻度の高いアプリを Teams から起動できるようにしたり、Power Automate から Teams に対して通知を飛ばすなど、様々な連携が可能です。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3074511/1ea2602e-26cc-52a9-ff68-9062811f6615.png)

https://qiita.com/Takashi_Masumori/items/b1983c6e5b25ca83b1a9

# Exchange Online/Outlook

Outlook として認識している人が多いと思いますが、サーバー側 (アクセスを受け付けたり、メールデータを格納していたり、メール送受信したりしている側) は Exchange Online と言います。


Microsoft 365 を契約している場合、日々のメール送受信という観点で Outlook を利用している人は多いと思いますが、メール送受信以外にも利用できる機能があります。既に利用している人も多いかもしれませんが、個人的に便利と思う機能について説明します。

## 会議室、備品予約

まず、Outlook/Exchange では、会議室や備品に対してもメールボックスを作成することができ、以下のように予約をすることが出来ます。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3074511/45ebb29d-13a3-30ac-6301-507f306d0c7d.png)

わざわざ会議室の予約のために別のシステムを用意しなくていいのはメリットと思います。また、以下のように会議室の予約状況をカレンダー形式で確認できます。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3074511/4e1a754a-00f9-9e31-d73d-dd2c8513f728.png)

予約は、上記のようにメールの宛先に会議室のメールボックスを検索して追加するのですが、以下のように、予約が確定したかどうかの返事が届きます。仮に、目視では予約が入っていないにもかかわらず、誰かが同時に予約をしようとしてバッティングした際は、瞬間的な差ですが、先に予約した方が確定となり、後から予約した方は辞退の返事が届きます。

**このダブルブッキングを防いでくれる機能は非常にありがたく、これを自作のアプリで実装しようとすると結構大変です。**

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3074511/3ec240a7-5c79-1849-2314-d1df54760f17.png)

## スケジュール調整機能

Outlook/Exchange では、メール以外にも予定も管理できます。そのため、他の人の予定表を見たり、スケジュール調整に関する機能もあります。

以下のスケジュールアシスタント機能は、全員が空いている候補日時を見つけるのに役たちます。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3074511/9cfdb8a5-271a-9734-2ecc-db21fdd87364.png)

また、以下の投票のスケジューリング機能は、空き時間をベースに候補をいくつか選択し、出席者に投票を依頼し、投票結果に基づき日付を確定するようなことが可能です。こちらの機能を有効活用することで日程調整が楽になる人も沢山いると思います。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3074511/e42b2b8d-8f88-21d5-87e6-3405118c4da5.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3074511/f2f8d2e5-2399-abcb-4b51-c55bfc802223.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3074511/3953a69e-5a4a-c586-28ec-479896fc01d5.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3074511/9e8f18d5-5aa0-eff9-84d2-075c77748610.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3074511/9664961b-7cb0-5b47-7ec9-976e94d67ab5.png)

こちらについて、以下の記事でとても分かりやすく解説されております。

https://qiita.com/dahatake/items/56c7a7d9f7f9b0757314#5-%E9%96%8B%E5%82%AC%E8%80%85%E3%81%AE%E3%83%93%E3%83%A5%E3%83%BC

なお、私の場合、社外の人と日程調整する際、先に社内の複数人のユーザーの日程調整をして、自分含め、**社内の関係者全員の候補日時を仮押さえしておき**、候補日時をお客様にお知らせし、返事をもらったら、仮押さえを解放して日程を確定するような日程調整が多いです。

上記投票アプリの場合、主催者以外の出席者について、候補日時が仮押さえされないため、例えば、先に投票をした人は、全員が投票して日程が確定するまで、自分が Prefer や Yes で回答した候補について自分で仮押さえしておく必要があり、それが面倒だったため日程調整用のアプリを Power Apps で作成しました。

https://qiita.com/Takashi_Masumori/items/bc3c4588a18ad852a246

https://qiita.com/Takashi_Masumori/items/d6f2406f352b4e975d61

# SharePoint Online

続いて SharePoint Online についてです。とりあえず、ChatGPT に聞いてみました (素晴らしい回答ですね)。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3074511/c6a08e6f-b4f2-a04c-478a-070c2a972403.png)

コラボレーション、ファイル共有、ドキュメント管理などに長けていることが分かります。ポータルサイトの観点がなかったので聞いてみました。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3074511/7fd9e9fd-3824-5304-853e-35637161f919.png)

なお、SharePoint リストについては、以下の記事で触れているため、こちらを参考にしてください。こちらの記事では、Power Apps アプリや Power Automate フローのデータソースとしての観点で述べていますが、リスト単体でも改善できることも多くあると思います。

https://qiita.com/Takashi_Masumori/items/705dfeed46005306121f

このように、社内ポータル、ドキュメントを管理するライブラリ、ファイル共有、リスト機能などを持つため、このような機能を持つアプリが欲しい場合、それなりに歴史があり成熟しているサービスですし、SharePoint を利用した方が良いと思います。

# Microsoft Forms

こちらは、Microsoft 365 を利用している方は結構利用されているのではないでしょうか？

今思えば、昔は、アンケートというと紙が配られ、回答を集め、一つ一つ集計するような感じでしたね。

作成も直感的で分かりやすいため、以下のような、トレーニング後のアンケートはもちろん、何らかの申請、簡易的な入力フォームの作成や集計が簡単にできます。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3074511/effa7b29-4f87-172b-ac91-991f4e3cd529.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3074511/3c37fa17-6f9a-392c-b7c9-430a93b6982c.png)

## Power Apps と Forms の違い

入力フォームについて、Power Apps と Forms どちらがいいですかと聞かれることがあるので、Power Apps 側のメリットを中心に、私の考えを述べます。

### 自由度

まず、Form は簡単な分、Power Apps と比べると自由度は低いです。Power Apps はこれまでこのブログで紹介してきた通り、自由に作成できます。

例えば、以下は、入力フォームの例ですが、既定値を自動で入れるなど、デザイン含め自由度が高いです。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3074511/280cf394-3e90-81c3-ce57-3d3b68a1088e.png)

### 一括登録

Power Apps の場合、データの一括登録も可能です。以下は働き方について一括で登録する例です。5 月分の働き方を一括で登録しました。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3074511/56474cbe-7fc7-0ca1-de4b-4cb09525567a.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3074511/5e774a39-f6d9-e55d-e628-93f3cfbd3aac.png)

### データの変更、削除

Power Apps の場合、データを登録するだけではなく、登録したデータの変更、削除なども可能です。

以下は、Power Apps で作成したアプリをカタログ化しているアプリですが、既に登録しているアプリの情報を変更できます。

このような機能も持たせたい場合は、Forms より Power Apps がいいと思います。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3074511/481a5a32-5e0c-1570-9e5b-8095a51eacbb.png)



以下では、自分が登録したアプリのみゴミ箱アイコンを用意して削除できるようにしています。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3074511/9d6a7259-595a-b3dc-af96-88c9d652fdcf.png)

### ユーザー検索などのデータソースとの検索

以下アプリでは申請をする人が承認者を検索して指定できるようにしています。Azure AD にデータが登録されていれば、既定値を自分の上司とすることも可能です。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3074511/65a145f1-dabf-e360-073a-c37426ef1d9d.png)

こちらは、以下でも紹介した、組織内のユーザーの検索が出来るコネクターというものを使用して実現しています。Forms では、このような組織内のユーザー検索は出来ません。

https://qiita.com/Takashi_Masumori/items/92f4772a73d7f05e6690

# Microsoft Planner/Microsoft To Do

タスク管理を行いたいという要望をいただくことがあります。こちらについては、Microsoft Planner、Microsoft To Do が得意にしている領域です。

Planner は、チームでのタスク管理に向いています。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3074511/8771de02-3787-2ee6-5a57-96797b8ade28.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3074511/9b5e1b66-bc98-f802-484e-0bdab3d696b2.png)

To Do は、チームでのタスクや個人のタスクなど、自分のタスク全般を集約して管理するのに向いています。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3074511/0c61b6fd-85eb-ef42-e89f-e5ab592509e2.png)

また、アクションが必要そうなメールについてもこちらに集約可能です。以下のように、後からアクションしようと思ったメールにフラグを設定すると、To Do からも確認可能になります。個人的にとても便利だと思います。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3074511/1102554e-668e-cac9-db92-0b3521fe24aa.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3074511/d66cb503-d6b8-1981-af32-bb6247d35aea.png)

上記をしのぐようなタスクを管理するアプリを Power Apps で一から作成するとなるとかなり大変だと思うので、まずは上記アプリで要件を満たせそうか、満たせない場合、一部 Power Platform と連携することで要件を満たせそうかを考える方が個人的には良いと考えます。

# Microsoft 365 グループ

グループでカレンダーを共有したいという要望をいただくことがあります。もちろん、Power Apps でも作れなくはないですが、Microsoft 365 グループを使った方が楽と思います。Microsoft 365 グループは、共同作業を実現するための機能です。

あれ、Teams とかも共同作業を実現するためのものじゃないっけ？と思う方もいると思います。実は、Teams のチームを作成すると裏で Microsoft 365 グループが作成されており、共同作業のバックボーンといった機能です。

https://support.microsoft.com/ja-jp/office/microsoft-365-%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%97%E3%81%AB%E3%81%A4%E3%81%84%E3%81%A6-b565caa1-5c40-40ef-9915-60fdb2d97fa2

こちらについて、カレンダー機能もあるため、グループでカレンダー共有したい場合は、こちらを使っちゃうのが早いと思います。もしくは、上述した、SharePoint リストをカレンダービューにして、グループで予定を共有しても良いかと思います。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3074511/b1082854-6b53-7713-5385-68b2f14fb37d.png)

https://support.microsoft.com/ja-jp/office/outlook-%E3%81%A7-microsoft-365-%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%97%E3%82%92%E6%B4%BB%E7%94%A8%E3%81%99%E3%82%8B-93132800-5b11-49de-8cc2-605b6075b2b9

# Microsoft Bookings

個人の予定をベースに予約システムを作りたい場合、Microsoft Bookings を使った方が楽かもしれません。予約枠を作成し、URL を共有し、そこから予約してもらうみたいな感じです。

例えば、沢山のメンバーと 1on1 をするマネージャーであれば、こちらからメンバーに 1on1 の予約をしてもらうと楽かもしれません。 

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3074511/26158eb4-3113-126d-1583-00cd81d902a0.png)

# まとめ

今回は、Microsoft 365 の既存のアプリやその機能について、代表的なものをいくつか紹介いたしました。上述した通り、アプリや自動化フローを作成することが業務効率化、改善の目的ではないことから、これらの既存のアプリやその機能を知っておくことも重要と考えます。

実際に知ることで、それらのアプリを使いこなすだけでも十分な業務効率化、改善が出来たり、Power Platform を連携することで業務効率化、改善をしたり付加価値を高めたりする案が思い浮かんだり、実現可能性を判断できたり、様々なメリットが生まれると考えます。

Microsoft 365 自体の利活用推進およびその観点で少しでもお役に立てば幸いです。