Power Appsではどんなことができるの?

こんにちは。ソリューショングループのkazumaです。
前回はPower Automateについて実例を交えながらお話ししました。
今回はPower Appsについて同様に解説できればと思います。


Power Appsの概要

Power Apps はMicrosoftが提供するアプリケーション作成プラットフォームです。
Power Appsを使えば、ビジネスに必要なアプリケーションをコーディングの知識がなくても簡単に作成できます。
たとえば、社内の申請や承認、在庫管理、顧客管理、アンケート、予約システムなど、さまざまな業務に役立つアプリケーションを作ることができます。
実際の作成方法としては、ドラッグアンドドロップやテンプレートを使って、上記で挙げたアプリケーションの画面や機能を簡単に作成することが可能となっています。


Power Appsの特徴

自由度の高いアプリ作成ができる

ドラッグ&ドロップで作成可能なインターフェイスを提供しており、コーディングの知識がなくても自由な形でアプリケーションを作成・カスタマイズすることができます。
また、作成するアプリはWindows、iOS、Android、Webなど、多数のプラットフォームに対応したものを作成することができます。

Power Automateと連携したワークフロー機能が使用できる

Power AppsはPower Automateと連携していて、承認プロセスやタスク管理などを自動化することができます。この自動化の設定にはテンプレートが用意されていて、設定も簡単です。
これによって複雑な処理でもPower Automateを介してノーコードで作成することができます。

実際に企業等で使用されているアプリとして以下のようなものが挙げられます。

  • 営業支援管理アプリ
  • 勤怠管理アプリ
  • 製造業でのデータ管理アプリ
  • 在庫管理アプリ

作成できるアプリの種類

実際にPower Appsでアプリを開発する場合には以下の2つの種類から選択して作成することになります。
それぞれ使い分けることでニーズに合わせたアプリを作成することができます。

1.キャンバスアプリ
キャンバスアプリとは、プログラミング言語でコードを書くことなく、自分の好きなようにレイアウトの設計ができるアプリケーションです。
キャンバスアプリは、テキストやUIの部品をドラッグ&ドロップで移していき、動作やデータを補うのが特徴で、後続の種類と比較してアプリ作成の敷居が低くなっています。

2.モデル駆動型アプリ
モデル駆動型とは、データベースをモデルにして、データ管理に特化したアプリです。
モデル駆動型は、フォームやビュー・ダッシュボードなどの画面の要素をテーブルへ追加することで構築できます。
その為、画面の自由度はキャンバスアプリよりは低くなっています。

Power Appsの料金

Power Appsの料金体系は以下のようになっています。(2025年1月現在)

1.Power Apps 開発者向けプラン [¥0]
Power Apps Premiumは開発者向けプランに加えてデータ接続、カスタムAPIの使用などより高度なアプリケーションを作成できる機能を有しています。
企業や大規模チームでの開発に向いているプランになっています。

2.Power Apps Premium [¥2,248(ユーザー/月)] ※2000ユーザー以上の契約の場合[¥1,799(ユーザー/月)]
Power Apps Premiumは開発者向けプランに加えてデータ接続、カスタムAPIの使用などより高度なアプリケーションを作成できる機能を有しています。
企業や大規模チームでの開発に向いているプランになっています。
また、この契約の場合Power Automateの使用ライセンスも付与されています。(ただしRPA機能のみ利用不可)

またPower Appsは他のMicrosoft社製品のライセンスに付帯している場合もあります。
以下の製品の契約がある場合には無償で使用できる場合があります。

・Microsoft365/Office365
基本機能は使用できますが、プレミアム機能は使用することができません。

・Dynamics365
プレミアム機能も含め使用することができます。
ただし、ライセンスのあるDynamics365と同じ環境にのみ作成可能となっています。


実際に作ってみる

今回は一例として「勤怠を入力するアプリ」を作成したいと思います。

始めに準備として、勤怠の情報を保存するExcelファイルをOneDrive上に作成します。
以下のようにExcel上にテーブルを作成します。(カラムの見出しは英語で設定しないと後続でエラーとなるので英語とすること)

One Driveに保存をしたら、実際にPower Appsにてアプリを作成していきます。
今回はキャンバスアプリで作成するため、始めにPower Appsを開き、「空のアプリ」→「空のキャンバスアプリ」を選択します。

選択すると、新規のアプリ作成画面が開きます。

先ほど作成したExcelファイルをデータとして使用するために、接続を行います。
画面上部「データの追加」から「コネクタ」を展開し、その中から「One Drive」を選択します。

選択するとファイルの選択が表示されるので、先ほど作成した対象のファイルを選択します。
その後、ファイル中の対象テーブルを選択します。

接続が成功すると、以下のように接続されたテーブルが表示されます。

次にアプリの画面レイアウトを作成します。
最初に出勤時間を入力する項目を以下のように設定します。
・出勤時間の文字:[テキストラベル]
・日付入力:[日付の選択]
・時入力、分入力:[ドロップダウン]
※それぞれの項目はドラッグアンドドロップで画面に表示することができます。

ドロップダウンの選択肢としてプロパティのItemsの項目にそれぞれ以下を設定します。
・時入力 (00~23までのいずれかの時間を選択できるようにする)["00","01","02","03","04","05","06","07","08","09","10","11","12","13","14","15","16","17","18","19","20","21","22","23"]
・分入力: (00~59までのいずれかの分を選択できるようにする)["00","01","02","03","04","05","06","07","08","09","10","11","12","13","14","15","16","17","18","19","20","21","22","23","24","25","26","27","28","29","30","31","32","33","34","35","36","37","38","39","40","41","42","43","44","45","46","47","48","49","50","51","52","53","54","55","56","57","58","59"]

次に退勤時間を設定します。基本的には出勤時間の項目と設定は同じになります。
・退勤時間の文字:[テキストラベル]
・日付入力:[日付の選択]
・時入力、分入力:[ドロップダウン]

ドロップダウンの選択肢には同様に、プロパティのItemsの項目をそれぞれ以下を設定します。
・時入力 (00~23までのいずれかの時間を選択できるようにする)["00","01","02","03","04","05","06","07","08","09","10","11","12","13","14","15","16","17","18","19","20","21","22","23"]
・分入力: (00~59までのいずれかの分を選択できるようにする)["00","01","02","03","04","05","06","07","08","09","10","11","12","13","14","15","16","17","18","19","20","21","22","23","24","25","26","27","28","29","30","31","32","33","34","35","36","37","38","39","40","41","42","43","44","45","46","47","48","49","50","51","52","53","54","55","56","57","58","59"]

次に名前の入力項目を以下のように設定します。
・名前の文字:[テキストラベル]
・入力項目:[テキストの入力]

最後に入力後の確定用のボタンを配置します。

ボタンを押下した際に入力した内容をExcelに反映するために、プロパティのOnSelectに以下の設定をします。
Patch(勤怠テーブル,{Name:NameText.Text,CheckIn: DateAdd(CheckInDate.SelectedDate + Time(Value((CheckInHour.Selected).Value),Value((CheckInMinute.Selected).Value),0),9,TimeUnit.Hours),CheckOut: DateAdd(CheckOutDate.SelectedDate + Time(Value((CheckOutHour.Selected).Value),Value((CheckOutMinute.Selected).Value),0),9,TimeUnit.Hours)})

以上でアプリの作成は完了です。
作成完了したので、次はアプリを公開します。公開は画面右上のマークから行います。

公開が完了したら、アプリの一覧から先ほど作成したアプリを再生します。

すると、先ほど作成したアプリが起動します。

起動したら、実際に動作させてみます。
出勤時間、退勤時間、名前を入力して確定します。

確定したら、先ほど作成したExcelファイルを開いてみます。
開くと先ほどアプリで入力した内容が新たにExcelに保存されていることが確認できます。
(__PowerAppsId__は自動で生成されるカラムになります。)


おわりに

今回はPower Appsについて実例を交えながらお話ししてきました。
次回はPower Platformの各機能を組み合わせることによってどのようなことができるようになるかを、実例交えてお話ししたいと思います。

Recommendおすすめブログ