【初心者向け】Power Appsで社内業務アプリを作る方法(ステップバイステップ)

A子さん

プログラミングができなくても大丈夫?

先輩

はい。数式もExcelのような書き方なので、慣れれば誰でも作成可能です。むしろ複雑なVBAコードより、Power Appsの数式の方がシンプルで読みやすいくらい。

A子さん

作成したアプリはスマホでも使えますか?

先輩

はい。Power Appsモバイルアプリをインストールすれば、iPhoneやAndroidでも利用可能。さらに「電話レイアウト」で設計したアプリなら、スマホでの使用を前提に最適化されています。

A子さん

有料ですか?

先輩

Microsoft 365(Business Standard以上)に含まれています。会社のPCなら既に使える環境になっているはず。Dataverse等の高度な機能を使う場合は追加料金がかかることもあります。詳しくは管理者に相談を。

A子さん

個人で学習用に使いたい場合は?

先輩

Microsoft 365 Personal(約1,284円/月)に加入すれば、個人でもPower Appsが利用可能。会社での経験を家でも深掘りできます。投資対効果は高いと私は考えます。

A子さん

既存のExcelマクロをPower Appsに置き換えることは可能?

先輩

完全な1対1置き換えは難しい場合も多いですが、「ExcelVBAの役割」をPower Appsが果たすことは十分可能。特に「フォーム入力 → データ保存」という単純な業務なら、むしろPower Appsの方が優れています。複雑なVBAは、Power Appsでは実装できないこともあるので、その場合はPower Automateとの組み合わせを検討します。

Microsoft 365(Business Standard以上)は、「個人」で契約することも可能です。会社での利用を学べるのはもちろん、個人の業務効率化にも役立ちます。

Power Appsは、Microsoftが提供するローコード開発プラットフォーム
以下のような業務アプリをExcel感覚で作成できます。

  • 申請フォーム
  • 勤怠記録アプリ
  • 検品・在庫チェックアプリ
  • 顧客管理アプリ(簡易CRM)など

実際に作る手順も、ドラッグ&ドロップ中心。
では早速、ステップバイステップで見ていきましょう。

目次

Power Appsとは?

Power Appsは、Microsoft 365に含まれるノーコード開発ツールです。
専門知識がなくても、社内向けの業務アプリを作成し、PCやスマホからアクセス可能な形で公開できます。

私が初めてPower Appsに触れたとき、率直な感想は「こんなんでアプリができるの?」でした。Excelのマクロやシステム開発経験者からすると、あまりにも簡単だったのです。その簡単さの背景には、Microsoftの長年の知見が詰まっています。

従来の社内アプリ開発といえば、IT部門に要件書を提出して、数ヶ月待つというフローが当たり前でした。その間に業務要件は変わり、完成したアプリが現場の実情に合わなくなる…という悪循環。

Power Appsなら、その悪循環を断ち切れます。現場の人間が直接、手を動かしてアプリを作り、すぐに使ってみて、改善する。このサイクルが数日で回ります。

特徴:

  • ExcelやSharePointと連携しやすい
  • スマホ対応済み
  • クラウド管理でバージョン管理も楽
  • Power Automateとの連携で業務フローも自動化可能

ExcelやSharePointとの連携が強力というのは、特に重要なポイントです。多くの企業では、既存データがExcelやSharePointに散在しています。わざわざそれを別のシステムに移行する必要はありません。今あるデータをそのまま活用して、アプリを構築できます。

スマホ対応も標準装備。営業員が外出先から入力する、現場作業員が検品情報をその場で記録するといった使い方が簡単に実現します。

そしてPower Automateとの連携。これが真価を発揮するのは、例えば申請フォームで「承認ボタンが押されたら、自動でメール通知 → 指定フォルダに保存」といった複数ステップの業務フローを実装するときです。。この自動化により、事務作業の負担が劇的に減ります。

キャンバスアプリとモデル駆動型アプリの違い

Power Appsには主に2つの方式があります。本記事では「キャンバスアプリ」を扱いますが、簡単に説明しておきます。

  • キャンバスアプリ:白紙のキャンバスに、自由にパーツを配置。UI/UXを細かく制御したいときに向く。初心者向けです。
  • モデル駆動型アプリ:データモデルを先に定義して、その上にアプリを自動生成。大規模な業務アプリに向く。初期セットアップは複雑。

最初は「キャンバスアプリから始めて、必要に応じてモデル駆動型に移行」という流れが一般的です。

事前に用意するもの

必要なもの

  • Power Appsが使えるMicrosoft 365アカウント
  • データソース(例:Excel / SharePoint / Dataverse)
  • 作りたいアプリのイメージ(どんな画面で何をしたいか)

Microsoft 365のプラン確認

Power Appsが含まれるMicrosoft 365のプランは以下の通りです。

  • Business Standard以上(会社から付与されている場合)
  • Microsoft 365 Personal(個人契約・約1,284円/月)
  • Power Apps Premium(ユーザーライセンス・別途契約)

会社から支給されているPCなら、既にPower Appsが使える環境になっているはずです。まずは管理者に確認してみましょう。

データソースの準備

アプリから読み書きするデータをどこに保存するか、事前に決めておきます。選択肢と特徴は以下の通り。

  • Excel(OneDrive):最も簡単。既存Excelを流用できます。ただし大規模データや複雑な業務ロジックには不向き。
  • SharePointリスト:企業向け。権限管理やバージョン履歴が強力。Excelより堅牢。
  • Dataverse:Power Appsネイティブ。複雑なリレーションシップやルール設定が可能。プレミアム機能。

初めてのアプリなら、Excelから始めるのが無難です。使い込むうちに「SharePointに移したいな」となったら、その時点で移行すればOKです。

アプリのイメージを言語化する

最後のステップが、意外と重要。

「営業員が顧客訪問時に、その場で受注データを入力するアプリ」という具体的なイメージがあると、何が必要か見えてきます。

  • 画面は何枚必要か(一覧表示画面+詳細入力画面、など)
  • どのフィールドが必須か(顧客名は必須、但し備考は任意、など)
  • 入力後に何が起きるべきか(Excelに保存?メール通知?)
  • スマホで使う想定か、PCのみか

この辺りを紙に書き出しておくだけで、実装がずっと楽になります。

アプリ作成の基本ステップ(キャンバスアプリ編)

Step 1:Power Appsを開く

https://make.powerapps.com/ にアクセスして、左メニューから「作成」→「キャンバスアプリ」を選択します。

初めてアクセスすると、Microsoft 365のログイン画面が出ます。会社のアカウントでサインインしましょう。

Step 2:テンプレートを選ぶ or 空のアプリを作成

次の画面で「電話レイアウト」と「タブレットレイアウト」の選択肢が出ます。

  • 電話レイアウト:スマホを想定した縦長の画面。外出先での利用向け。
  • タブレットレイアウト:横幅を活用した設計。事務所でのPC利用向け。

初心者には「電話レイアウト」から始めるのがおすすめです。理由は、制約が明確だから。「この幅内で何を表示するか」という判断が簡単になります。

また、Microsoftも用意しているテンプレート(「データから始まる」など)もありますが、最初は「空のキャンバス」がおすすめ。完全なカスタマイズが可能で、勉強になります。

Step 3:データソースを接続

アプリが開いたら、右側の「データ」パネルから「データの追加」をクリック。

  • Excel(OneDriveに保存)
  • SharePointリスト
  • Dataverse

などからデータを読み込むよう設定します。

例えばExcelを選ぶ場合、OneDriveの「どのファイル」「どのシート」を使うか指定します。ここで重要なのが、Excelの最初の行が「ヘッダー(列名)」として認識されることです。

もし既存のExcelファイルを使う場合は、事前にヘッダー行が正しく設定されているか確認しておくと、後のトラブルを避けられます。

Step 4:画面にパーツを配置

いよいよUIの作成。左側のパネルから必要なコントロールをドラッグ&ドロップで配置していきます。

  • Label:タイトルや説明文
  • TextInput:ユーザーがテキストを入力するフィールド
  • Button:ユーザーがクリックして何か実行するボタン
  • DropDown:プルダウンメニュー(複数の選択肢から選ぶ)
  • DatePicker:日付選択
  • Toggle:ON/OFFの二者択一
  • Gallery:データベースの複数行を一覧表示(リスト表示)

これらを組み合わせて、アプリの画面を設計します。

例えば「受注入力アプリ」なら、以下のような流れになるでしょう。

  • 画面1(一覧):既存の受注データをGalleryで表示
  • 画面2(詳細 / 編集):顧客名、金額、日付などをTextInputで入力
  • 画面2下部:「保存」ボタンと「キャンセル」ボタン

コントロールを配置したら、それぞれのサイズや位置を細かく調整します。ここが「デザイン」の部分。ユーザーが使いやすいレイアウトを心がけます。

Step 5:数式を入力して動作設定

ここが最も重要で、かつ難しいポイント。各コントロールに「どういった時に何を実行するか」という指示を書き込みます。

例えば「保存ボタン」をクリックされたら、入力内容をExcelに記録する。その時の数式が以下です。

Patch(データソース, Defaults(データソース), {名前: TextInput1.Text, 日付: Now()})

Patchという関数を使って、データソース(Excel等)に新しい行を追加しています。

  • Patch():データベースへのデータ追加・更新を指示
  • Defaults(データソース):新規レコードの雛形を取得
  • {名前: TextInput1.Text, 日付: Now()}:各フィールドに何を入れるか(TextInput1に入力された値を「名前」フィールドに、現在時刻を「日付」フィールドに)

Excelのマクロ経験者なら、この書き方は想像しやすいはず。ExcelのVBAより、むしろシンプルです。

その他、よく使う数式の例:

  • Filter(データソース, フィールド = TextInput1.Text):条件に合致するデータを絞り込み(検索機能)
  • Notify("保存しました", NotificationType.Success):画面上に「保存しました」というメッセージを表示
  • Navigate(画面2):別の画面に遷移

Excelのマクロで「Sub」から始まるコード書いている人より、Power Appsの数式の方が視認性良く、メンテナンスしやすい。その点は本当に優秀です。

Step 6:プレビューで動作確認 → 保存・発行

作成途中、何度も「プレビュー」ボタン(再生マークのアイコン)を押して、動作確認します。

ここで「ボタンをクリックしたがデータが保存されない」「入力フィールドが反応しない」といった問題が見つかることが多いです。その都度、数式を修正して、再度プレビューする。このサイクルが重要。

問題がなくなったら、「ファイル」→「保存」で保存します。ここまでは開発モード。

社内で利用開始する際は、アプリを「発行」する必要があります。この発行により、初めて社員がアクセス可能な状態になります。

よく使うコントロールと設定

Power Appsには数十のコントロールが用意されていますが、実務では以下の5つがあれば、かなりのアプリが作成できます。

コントロール主な用途
Label表示用テキスト(タイトル、説明、入力済みデータの表示など)
TextInputユーザー入力用(名前、メールアドレス、金額など単一行テキスト)
Button処理実行(保存、削除、検索など。クリック時の動作を指定)
DropDown選択肢の表示(商品分類、ステータス、優先度など。複数選択肢から1つ選ぶ)
Gallery一覧表示(リストやテーブル。複数行を見やすく表示)

TextInputの活用

TextInputは単なる「文字入力欄」ではありません。細かいカスタマイズが可能です。

  • Mode:Text / Number / Email / Passwordなど。例えばNumber指定なら、数字のみ入力可能になります。
  • Placeholder:入力欄が空の時に表示するヒント文。「例:yamada@company.com」など。
  • MaxLength:最大文字数。営業コードは5文字まで、という制約なら「5」と指定。

Galleryの活用

Gallery(ギャラリー)は、データベースの複数行をリスト表示する強力なコントロール。受注一覧やメール一覧など、「複数件の情報」を見せるシーンで活躍します。

Galleryに「どのデータソースを表示するか」を指定すると、自動で一覧が生成されます。その後、各行をカスタマイズして、見た目を整えます。

Galleryの各行をクリックされたら詳細画面に遷移する、という動作も簡単に実装できます。これにより「一覧 → 詳細」という基本的なUIフローが完成します。

Buttonの動作設定(OnSelect)

Buttonで最も重要なプロパティが「OnSelect」。ボタンがクリックされた時に実行する数式を書き込みます。

複数の処理を一度に実行したい場合は、セミコロン「;」で区切ります。例:

Patch(顧客リスト, Defaults(顧客リスト), {名前: TextInput1.Text, メール: TextInput2.Text}); Notify("顧客情報を保存しました", NotificationType.Success); Navigate(完了画面)

この例では、3つの処理が順番に実行されます:データ保存 → 成功メッセージ表示 → 別画面に遷移。

必須フィールドの実装

ユーザーが重要なフィールドを空欄のまま保存しようとしないよう、制御する必要があります。

Buttonの「DisplayMode」プロパティに以下を指定すれば、「顧客名」フィールドが空の間、保存ボタンを無効化できます。

If(TextInput1.Value = "", DisplayMode.Disabled, DisplayMode.Edit)

「TextInput1(顧客名)が空なら、ボタンを無効化(Disabled)。そうでなければ、編集可能(Edit)」という意味です。

複数画面を使ったアプリ設計

本格的なアプリには複数の画面が必要になることがほとんどです。

  • 画面1(ホーム):メニュー画面。「新規登録」「既存データ検索」「設定」などのボタン配置。
  • 画面2(新規登録):入力フォーム。
  • 画面3(検索):既存データを検索・表示。
  • 画面4(詳細):1件のデータを詳しく見る・編集する。

画面間の遷移は「Navigate()」関数で制御します。例えば「新規登録ボタン」を押したら、画面2へ移動。その画面で「キャンセルボタン」を押したら、ホームに戻る。

画面間でデータを受け渡す必要があることもあります。例えば「一覧から顧客Aをクリック」→「詳細画面に顧客Aの情報を表示」という流れです。

その場合は、グローバル変数やコンテキスト変数を活用します。

Set(選択済み顧客, ThisItem); Navigate(詳細画面)

「Galleryの各行(ThisItem)を変数に格納してから、詳細画面へ移動」という処理。詳細画面では、この変数を参照して、顧客情報を表示できます。

実務での使い分け:こんな業務にはPower Apps

Power Appsは万能ではありません。向き・不向きがあります。私の経験から、実務での使い分けポイントをお伝えします。

Power Appsに向いている業務

  • 申請フォーム系:出張申請、経費申請、休暇申請。ユーザーが数個の項目を入力して送信。
  • 検査・記録系:日々のチェックリスト、設備点検、在庫確認。現場でリアルタイムに記録。
  • 簡単な一覧管理:顧客情報管理、タスク管理(簡易版)。CRUD(作成・読取・更新・削除)が基本。
  • モバイルファースト業務:営業外勤での記録入力、倉庫での在庫チェック。スマホ・タブレットでの利用。

Power Appsに向いていない業務

  • 複雑な業務ロジック:複数の条件分岐、複雑な計算が必要。VBA/C#など本格的なプログラミングが必要な領域。
  • リアルタイムで膨大なデータ処理:秒単位で数千件のデータを処理・分析。データウェアハウスやBIツール推奨。
  • ローカルPC内での処理:ExcelVBA的な「PC内だけで完結」する業務。オンプレミスサーバー限定。

作成したアプリを社内で共有するには?

基本的な共有手順

  1. アプリを保存・発行:Power Apps Studioから「ファイル」→「保存」→「発行」を実行。
  1. 共有設定を開く:「共有」ボタンをクリック。
  1. ユーザー・グループを選択:共有したい人、またはActive Directoryグループを指定。権限(編集可 / 実行のみ)を選択。
  1. アクセスURLをコピー:共有リンクをメール・TeamsのメッセージやWikiに張り付け。

権限設定のポイント

共有時に「誰がどこまで操作できるか」を細かく制御できます。

  • 「編集」権限:アプリ自体を編集可能。機能追加・修正がしたい内部スタッフ向け。
  • 「実行」権限:アプリを起動・利用のみ。通常のエンドユーザー向け。

多くの場合、営業員や事務スタッフには「実行」権限のみ付与します。

Teamsに組み込む方法

より浸透度を高めたいなら、Teamsタブとしてアプリを追加するのが効果的。

Teamsチャネルの「+」→「アプリを追加」から「Power Apps」を選択。先ほど共有したアプリを選ぶだけです。

こうすることで、ユーザーが別途URLを開く手間がなくなり、Teamsを開いた時点でアプリにアクセス可能。利用率が格段に上がります。

バージョン管理と更新

アプリを更新する際は「編集」→「保存」→「発行」の流れです。

Power Appsは自動的にバージョン履歴を保存しているので、「前のバージョンに戻したい」という時も簡単。「ファイル」→「バージョン」から過去のバージョンを復元できます。

ExcelVBAのように「修正したら前のコードが残らない」といった悲劇を避けられます。

よくある質問(FAQ)

プログラミングができなくても大丈夫?

はい。数式もExcelのような書き方なので、慣れれば誰でも作成可能です。むしろ複雑なVBAコードより、Power Appsの数式の方がシンプルで読みやすいくらい。

作成したアプリはスマホでも使えますか?

はい。Power Appsモバイルアプリをインストールすれば、iPhoneやAndroidでも利用可能。さらに「電話レイアウト」で設計したアプリなら、スマホでの使用を前提に最適化されています。

有料ですか?

Microsoft 365(Business Standard以上)に含まれています。会社のPCなら既に使える環境になっているはず。Dataverse等の高度な機能を使う場合は追加料金がかかることもあります。詳しくは管理者に相談を。

個人で学習用に使いたい場合は?

Microsoft 365 Personal(約1,284円/月)に加入すれば、個人でもPower Appsが利用可能。会社での経験を家でも深掘りできます。投資対効果は高いと私は考えます。

既存のExcelマクロをPower Appsに置き換えることは可能?

完全な1対1置き換えは難しい場合も多いですが、「ExcelVBAの役割」をPower Appsが果たすことは十分可能。特に「フォーム入力 → データ保存」という単純な業務なら、むしろPower Appsの方が優れています。複雑なVBAは、Power Appsでは実装できないこともあるので、その場合はPower Automateとの組み合わせを検討します。

Microsoft 365(Business Standard以上)は、「個人」で契約することも可能です。会社での利用を学べるのはもちろん、個人の業務効率化にも役立ちます。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

かもろぐ屋へようこそ。

Microsoft製品が大好きな現役社内SEです。
本業では、業務改善・運用・トラブル対応・効率化など、いわゆる「社内の困った」を何でも屋のように対応しています。

このブログでは主に、

VBA
Power Apps
AI

について、実体験ベースで発信しています。

特に最近は、AIを使ったアプリ開発やブログ運営の自動化にハマっています。
「AIがあれば簡単に作れる」と思って始めた結果、普通に壊れたり、詰んだり、課金したりしながら泥臭く進めています。

キラキラした成功談というより、

「実際どうだったのか」
「どこで詰まったのか」
「初心者でも本当にできるのか」

を、できるだけリアルに残すタイプのブログです。

なお、絶賛婚活中です。

コメント

コメントする

CAPTCHA


目次