【PowerApps】Switch 関数の使い方

Switch関数の使い方
目次

Switch関数の概要

まずSwitch関数とは

Switch関数は、条件式を評価して、その結果に基づいて値を返す関数です。

基本的な構文

Switch(条件 , 結果 , 処理 , [結果2 , 処理2 ,※省略可能] , それ以外の処理)

簡単な使用例

Switch関数を使って、社内アプリのログイン機能的なのを作ってみます。
アプリを操作する人の部署によって、ログインボタンを押した後表示する画面を変えていきます。

ログイン画面
ログイン画面

まず、名前と部署はユーザーの情報を自動で入力できるようにしています。

  • 氏名:Office365ユーザー.MyProfile().DisplayName
  • 部署:Office365ユーザー.MyProfile().Department

ユーザーの情報を確認・設定する場所はアカウントを作成するMicrosoft365上で出来ます。

部署の設定方法

Microsoft365にログインしていただいたら、「管理」をクリック。

Microsoft365のログイン画面

対象のアカウントを選択し、「連絡先情報の管理」をクリック

「部署」の入力欄がございますのでそちらで設定できます。

各部署用の画面の設置

「+新しい画面」から各部署用の画面を作成します。今回は、技術部、営業部、経理部、当てはまらない時用の画面を用意しました。各画面には、表示したいコンテンツを設置してください。

  • 技術部:EngineeringDepartmentScreen
  • 営業部:SalesDepartmentScreen
  • 経理部:AccountingDepartmentScreen
  • 当てはまらない時:ErrorScreen
各部署用の画面を設置

ログイン画面の設計

ユーザーの部署設定、移動した先の画面の準備が完了したので、次はいよいよSwitch関数を使って、ログイン画面を作っていきます。

まず、「テキスト入力」を使って、氏名と部署を自動入力できるようにしていきます。
[UserNameInput]という名前の「テキスト入力」のDefaultに下記コードを設置してください。また、テキスト入力の表示モードは、無効に設定して編集できないようにしておくことをお勧めします。

Office365ユーザー.MyProfile().DisplayName

氏名を表示させる設定

同様に部署も設定していきます。
[DepartmentInput]という名前の「テキスト入力」に下記コードを設置してください。こちらも表示モードを無効に設定しておくことをお勧めします。

Office365ユーザー.MyProfile().Department

そして今回のメインであるログインボタンの設置になります。まず、ボタンの[OnSelect]に入力したのは、下記コードになります。

Switch(DepartmentInput.Text,”営業部”,Navigate(SalesDepartmentScreen),”技術部”,Navigate(EngineeringDepartmentScreen),”経理部”,Navigate(AccountingDepartmentScreen),Navigate(ErrorScreen))

説明していきます。
「DepartmentInput.Text」はアプリを操作しているユーザーの部署になります。
アプリを操作しているユーザーの部署が営業部なら、営業部用画面(SalesDepartmentScreen)に移動。
アプリを操作しているユーザーの部署が技術部なら、技術部用画面(EngineeringDepartmentScreen)に移動。
アプリを操作しているユーザーの部署が経理部なら、経理部用画面(AccountingDepartmentScreen)に移動。
どの部署にも当てはまらないのであれば、エラー画面(ErrorScreen)に移動。

Navigate関数は、表示する画面を変更することができる関数です。移動する画面は、()内に指定します。

動作を確認してみましょう。

部署を技術部に変更して、ログインボタンを押してみます。
下記画像のように移動できたと思われます。
移動できない場合は、画面の名前と、Switch関数で設定した画面の名前が一致しているか確認してみてください。

ログイン画面
技術部用スクリーン

次は、部署を総務部に設定してログインボタンを押してみます。
総務部は今回、設定していないのでエラー画面に移動します。

ログイン画面(総務部の場合)

まとめ

今回はSwitch関数について紹介していきました。
結果に応じて、処理を変えることのできる関数です。If関数と似ていますが、また違う使い方ができる関数なので、抑えておきましょう。
最後まで、お読みくださりありがとうございます。

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

管理人

2000年生まれの23才/男/高卒
派遣で車のパーツを製造する企業のDX推進課に勤めています。
極めたい事は魚釣り。フリーランスになりたいのでどなたかおPowerAppsのお仕事ください。保有資格:LPICレベル1/Azure Fundamentals/Azure Solutions Architect Expert(LPICとAzureは業務で使用したことないです。。。)
使える言語:HTML/CSS/JavaScript(jQuery)
こちらに連絡ください。。→info@power-magic.jp

コメント

コメント一覧 (20件)

コメントする

目次