開始使用畫布應用程式中的公式
設定畫布應用程式的公式,讓它們不僅能計算值和執行其他工作 (如同它們在 Excel 中的作用),還能回應使用者輸入 (視應用程式需求)。
- 在 Excel 中,您會建立,如填入儲存格及建立資料表和圖表的公式。
- 在 Power Apps 中,您會在設定控制項 (不是儲存格) 時建立類似的公式。 此外,您還會建立應用程式 (不是試算表) 專用的公式。
例如,您建立公式來決定當使用者選取按鈕、調整滑桿或提供其他輸入時,應用程式該如何回應。 這些公式可能會顯示不同的畫面、更新應用程式外部的資料來源,或是建立包含現有資料表之子集資料的資料表。
您可以在多種情況下使用公式。 例如,您可以使用裝置的 GPS、地圖控制項及使用 Location.Latitude 和 Location.Longitude 的公式來顯示目前位置。 當您移動時,地圖會自動追蹤您的位置。
本文僅提供使用公式的概述。 如需詳細資料及函式、運算子和其他可用之構成要素的完整清單,請瀏覽公式參考。
必要條件
使用 Power Fx 公式列
Power Fx 資料編輯列為您的應用程式編寫公式提供了一種更直觀、更有效率的方式。 請依照這些步驟來使用公式列:
- 在 Power Apps Studio 中開啟您的應用程式以進行編輯。
- 透過選擇畫面頂部的資料編輯列來打開它。
- 開始在列中輸入您的公式。 當您鍵入時,資料編輯列會提供與您的輸入相符的函數建議。
- 繼續輸入您的公式或選取建議,直到完成為止。
顯示值
在 Excel 中,您可以在儲存格內鍵入內容,以輸入特定資料,如數值 42 或片語 Hello World。 此儲存格顯示的資料與您輸入的資料完全一致。 同樣地,在 Power Apps 中,您可以將標籤的 Text 屬性設定為所需的字元順序 (以雙引號括住),藉此指定不會變更的資料。
建立空白畫布應用程式。
公式列位於畫面的頂端。
在畫面中新增標籤控制項。
當您新增標籤時,屬性清單會自動顯示 Text 屬性,會負責驅使控制項顯示內容。 根據預設,這個屬性的值是 "Text"。
在公式列中輸入 "Hello World" (以雙引號括住),以將 Text 屬性的值設定為該字串:
當您輸入時,標籤會反映這個新值。 您打字時畫面可能會顯示黃色感嘆號圖示。 這些圖示表示錯誤,但當您輸入有效值後它們就會消失。 例如,兩端沒有雙引號的字串即不是有效值。
在 Excel 中,您可以藉由在儲存格內鍵入數值(如 42)或輸入計算結果為該數值的公式(如 =SUM(30,12)),來顯示數值。 在 Power Apps 中,您只要將控制項 (如標籤)的 Text 屬性設定為 42 或 Sum(30,12) ,即可達到相同的效果, 無論工作表或應用程式中發生什麼變化,儲存格和標籤都會顯示該數字。
注意
在 Power Apps 中,您不需要像在 Excel 中一樣於公式前面加上等號或加號。 根據預設,公式列會將您輸入的任何內容視為公式。 您也不需要像先前指定文字字串一樣,以雙引號(")括住公式。
在標籤的 Text 屬性中,用 Sum(1,2,3) 取代 "Hello World"。
在輸入內容時,資料編輯列會藉由顯示此函數的描述和預期引數來協助您。 如同「Hello World」最後的雙引號一樣,畫面上會顯示一個紅叉,表示錯誤,直到您輸入這個公式的最後一個括號。
新增了最後一個括號後的完整公式:
根據輸入內容變更值
在 Excel 中,您會在儲存格輸入 =A1+A2 來顯示儲存格 A1 和 A2 所含之值的總和。 當這兩個值的其中之一或兩者變更時,含有公式的儲存格會自動顯示更新的結果。
在 Power Apps 中,只要新增控制項到畫面並設定其屬性,您就可以達到類似的結果。 此範例顯示名為 Label1 的標籤控制項,以及兩個文字輸入控制項,分別名為 TextInput1 和 TextInput2。 您可以為 Label1 控制項新增公式,這樣當您在 TextInput1 和 TextInput2 中輸入數字時,它們會相加並顯示在 Label1 中。
無論您在文字輸入控制項中輸入什麼數字,標籤始終顯示這些數字的總和,因為其 Text 屬性設定為以下公式:TextInput1.Text + TextInput2.Text
。
在 Excel 中,您可以使用格式化的條件公式來呈現「以紅色顯示負值」之類的情況。 在 Power Apps 中,您使用公式判斷的不只有控制項的主要值,還有顏色等屬性。
在此範例中,標籤的 Color 屬性公式會自動以紅色顯示負值。 If 函式從 Excel 看起來應該有點熟悉:
If( Value(Label1.Text) < 0, Color.Red, Color.Black )
根據使用者輸入內容變更色彩
您可以設定應用程式的公式,讓使用者得以變更應用程式的外觀或行為。 例如,您可以建立一個篩選器以僅顯示包含使用者指定的文字字串的資料。 您可以讓使用者根據資料集中的某一列對一組資料進行排序。
在此範例中,您可以讓使用者透過調整一個或多個滑桿來改變畫面的顏色。
刪除前面程序中的控制項,或像以前一樣建立空白應用程式,然後向其中新增三個滑桿控制項。 您可以在插入頁面的搜尋框中搜尋滑桿控制項,以找到輸入下的控制項。 若要新增滑桿,請將控制項拖曳到畫布上。
排列滑桿使它們不重疊,新增三個標籤,並設定標籤以顯示紅色、綠色和藍色文字。
將每個滑桿的 Max 屬性設為 255 (預設值為 100),這是 RGBA 函數顏色成分的最大值。
選擇畫面以取消選擇任何控制項,然後將畫面的 Fill 屬性設定為此公式:RGBA(Slider1.Value, Slider2.Value, Slider3.Value, 1)。 您的畫面變為深灰色,反映了滑桿的目前位置。
在公式中,您可以使用屬性選擇器存取控制項屬性。 例如,Slider1.Value 指的是滑桿的 Value 屬性,它表示使用者將滑桿放置在最小值和最大值之間的位置。
預覽應用程式並調整滑桿。 您可以看到每個控制項是如何透過顏色編碼來改變畫面的背景顏色的。
當每個滑桿變更時,系統會重新計算含有 RGBA 函數的公式,進而立即變更畫面的外觀。
管理應用程式行為
公式不僅能用來執行計算及變更外觀,還能用來採取動作。 例如,您可以將按鈕的 OnSelect 屬性設定為含有 Navigate 函式的公式。 當使用者選取該按鈕時,您在公式中指定的畫面便會出現。
某些函式,如 Navigate 和 Collect,只能用於行為公式中。 如果函式只能用於這個內容中,公式參考將會提醒您。
如果您以分號 (;)分隔函式,就可以在行為公式中進行多個動作。 例如,您可能會想要更新 context 變數、將資料發送到資料來源,最後再瀏覽至另一個畫面。
依照類別檢視屬性清單
屬性清單會按字母順序顯示屬性,但您也可以查看控制項的所有屬性 (按類別組織),如果您選擇一個控制項 (例如 Label1),然後選擇屬性窗格中的進階索引標籤,您將看到一長串該控制項的屬性。
您可以此檢視中直接編輯公式。 透過屬性搜尋,您可以快速找到該控制項的屬性並變更控制項的行為和外觀。
公式語法
當您在公式列中輸入公式時,不同的語法元素會以不同的顏色顯示以便閱讀,並協助您了解長公式。 這是 Power Apps 中的顏色代碼清單。