6
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

「ローコードなのに難しい?」PowerAppsに振り回された新卒1年目のサバイバル記録

Last updated at Posted at 2025-12-17

はじめに

こんにちは。GxPのブルースです。
この記事は グロースエクスパートナーズアドベントカレンダー 18日目の記事です。

私はITを約2年間独学し、今年の春に新卒として入社しました。
現在はローコードツールを活用したアプリ開発に携わっています。

ローコードツールと聞くと、「簡単にアプリが作れる便利なツール」というイメージを持つ方も多いかもしれません。
しかし、それは時に大きな落とし穴になることもあります。

特に私にとっては、実務経験ゼロ、テストやパフォーマンス、運用設計など、すべてが手探り状態の中でのスタートでした。

この記事では、Power Appsと向き合ったこの4か月で感じたことや、AIにも頼れず、試行錯誤を繰り返しながら身につけた「考える力」について共有します。

同じように悩んでいる方に、少しでも参考になる部分があれば嬉しいです!


Power Apps(パワーアプリ)とは?

Power Appsは、Microsoft が提供するローコード開発プラットフォームです。

専門的なプログラミング知識がなくても、業務アプリを短期間で開発できます。

ExcelやSharePoint、Dataverse、Box、Teamsなどと連携し、申請管理・台帳管理・業務フローの可視化などの社内アプリが構築できます。

画面設計はドラッグ&ドロップ、ロジックは Excel に近いPower Fxを使うため、

業務ユーザーとIT部門の橋渡しとなるツールとして、多くの企業で注目されています。

image.png

image.png


PowerAppsは「簡単」と「複雑」の間でぐるぐるしているもの

最初に詰まったのは、まさかの“スクロール”

開発を始めて最初に詰まったのは、驚くほど基本的な操作でした。

  • 画面がスクロールできない
  • チェックボックスの値がうまく保存されない
  • 保存ボタンを押してもデータが反映されない

UIは表示されていても思った通りに動かない。

「こんな簡単なことがなぜできない?」という違和感の連続でした。

image.png

image.png

原因は「Power Apps的な考え方」ができていなかったこと

原因を一つずつ整理すると、それはツールの問題ではなく、自分の思考のズレでした。

  • スクロールできなかったのは、コンテナ設計の理解不足
  • チェックボックスが保存できなかったのは、データとコントロールのつながりを理解していなかった
  • 保存ボタンが動かないのは、Formの設計を誤解していた

見た目のシンプルさに油断していたんですね。

UIは簡単そうに見えるけど、考えることは山ほどある

Power Appsは、見た目も操作も「簡単そう」に見えます。

でも実際は、状態管理・データ構造・UIの設計など、かなり多角的な思考が求められます。

たとえば:

  • 「どの値が、どこから来て、どこに保存されるのか?」
  • 「表示されている値と、実際に使われるデータの型は一致しているのか?」

これらを理解していないと、「なぜ動かないのか」が全く分からない状態になります。


AIに頼れなかった——最後に頼れるのは自分の試行錯誤

Power Apps開発中、AIにも何度も質問しました。

でも、AIの答えは9割くらい“惜しいけど違う”。

というのも、Power Appsはアップデート頻度が高く、Canvasアプリ・Dataverse・Automate連携などによって答えが全く変わるからです。

最初に特に苦しんだのは、型エラー。

Record vs Table vs OptionSet
OptionSetValue vs Text

AIは「これを書けば動く」とは言ってくれますが、「なぜそう書くのか」「それがどうデータと関係しているのか」は説明できないし、型エラーという認識もあんまり配慮していないと感じました。

だから結局、変数のバリュー確認・GalleryやFormの戻り値を確認 → ラベルに表示 → 式を1つずつ分解しながら、自分で仮説を立てて試すしかない。

この経験を通じて感じたのは、「AIを使いこなすには、自分で“正解かどうかを判断する力”が必要だ」ということでした。


トライアンドエラーこそが最大の武器

振り返ると、この経験を通して最も成長につながったのは、とにかく手を動かして試したことでした。

  • 仮のデータを入れて表示確認
  • 変数を設定して流れをチェック
  • エラーが出たら分解して何が違うかを確認

特に印象に残っている挑戦 ー Office365ユーザーの読み込み制限を超えた話

開発中に特に苦労したのが、Office365 ユーザー一覧の取得とコンポーネント内での表示でした。

当初、Office365ユーザーコネクタを使ってデータを取得し、一覧をコレクションにキャッシュする方法を考えました。

しかし、ここでもすぐに壁にぶつかります。

Power Apps では Office365Users.SearchUser によるデータ取得は 最大999件までという制限があり、

そこで試したのが、A〜Zごとにフィルタリングしてコレクションを複数作るというアプローチです。

Filter(Office365Users.SearchUser({searchTerm:"A", top: 999}), ...)
Filter(Office365Users.SearchUser({searchTerm:"B", top: 999}), ...)
...

ですが、これも限界がありました。全社員を完全にカバーするには届かないのです。

悩んだ末にたどり着いたのは、「コンポーネント内の Items プロパティで動的に取得する」という方法です。

If(
    IsBlank(ComboBox1.SearchText),
    colUsers,
    Filter(
        Office365Users.SearchUser({
            searchTerm: ComboBox1.SearchText,
            top: 999
        }),
        "@example-domain" in Mail
    )
)

@example-domain は実際のメールドメインに置き換えて使っています

このように、検索文字列が空ならキャッシュを使い、入力されていれば SearchUser を使ってフィルタリングし、表示件数を絞るという構成です。

地味な工夫ですが、これによりコンポーネント単体でもユーザー検索が可能になり、パフォーマンスも確保できました。

この解決方法にたどり着けたのは、最初から正解が見えていたからではなく、失敗を繰り返し、試しながら「Power Appsではこう考えれば動くのでは?」と推論し続けたからです。

まさに、自分の“考える力”が武器になる場面だったと感じました。


今、同じように悩んでいるあなたへ

最初、私は スクロールすらできずに本気で悩んでいた新卒でした。

でも、失敗しても諦めずに試し続けた結果、いつの間にか「なぜ動かないか」が見えるようになってきたんです。

Power Appsには、正解がひとつではない世界があります。

だからこそ、完璧じゃなくてもいい。まずやってみること。試して壊して、また直せばいい。

この経験を通じて私は、「考える力」や「観察する目」が、一番の武器になると強く実感しました。

Power Appsは、ただの業務ツールではなく、自分の思考と創造力を鍛えてくれるフィールドです。

今つまずいているあなたも、絶対に大丈夫。

少しずつ、確実に、力になっていきます。

ぜひ、気楽に挑戦してみてください。


最後に

この4か月間、Power Appsでたくさん悩み、たくさん試し、少しだけ自信が持てるようになりました。

この記事が、これからPower Appsに挑戦する方のヒントになれば嬉しいです。

最後まで読んでいただきありがとうございました!

もし「ここも困ったよ!」「この機能どう実装?」などあれば、ぜひコメントください!

一緒にトライアンドエラーしていきましょう!

参考資料

6
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
6
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?