PowerApps의 If 및 Switch 함수If and Switch functions in PowerApps

04/24/2017

읽는 데 8분

참가자

이 문서의 내용

집합의 조건이 참 인지(If) 또는 수식의 결과가 집합의 값과 일치하는지(Switch) 확인한 다음 결과를 반환하거나 작업을 실행합니다.Determines whether any condition in a set is true (If) or the result of a formula matches any value in a set (Switch) and then returns a result or executes an action.

설명Description

If 함수는 true 결과를 찾을 때까지 하나 이상의 조건을 테스트합니다.The If function tests one or more conditions until a true result is found.그러한 결과를 찾으면 해당 값이 반환됩니다.If such a result is found, a corresponding value is returned.그러한 결과가 없으면 기본값이 반환됩니다.If no such result is found, a default value is returned.두 경우 모두, 표시할 문자열, 평가할 수식 또는 다른 양식의 결과가 반환 값이 될 수 있습니다.In either case, the returned value might be a string to show, a formula to evaluate, or another form of result.

Switch 함수는 수식을 평가하고 그 결과가 사용자가 지정한 시퀀스의 값과 일치하는지 확인합니다.The Switch function evaluates a formula and determines whether the result matches any value in a sequence that you specify.일치하는 항목을 찾으면 해당 값이 반환됩니다.If a match is found, a corresponding value is returned.일치하는 항목이 없으면 기본값이 반환됩니다.If no match is found, a default value is returned.두 경우 모두, 표시할 문자열, 평가할 수식 또는 다른 양식의 결과가 반환 값이 될 수 있습니다.In either case, the returned value might be a string to show, a formula to evaluate, or another form of result.

If와 Switch는 매우 유사하지만 상황에 가장 적합한 함수를 사용해야 합니다.If and Switch are very similar, but you should use the best function for your situation:

다수의 가능한 일치 항목에 대해 단일 조건을 평가하려면 Switch를 사용합니다.Use Switch to evaluate a single condition against multiple possible matches.이 경우 If를 사용할 수도 있지만 가능한 일치 항목마다 수식을 반복해야 합니다.You can also use If in this case, but you'd need to repeat the formula for each possible match.

두 가지 이상의 작업을 분기하기 위해 동작 수식에 이 두 가지 함수를 모두 사용할 수 있습니다.You can use both of these functions in behavior formulas to branch between two or more actions.하나의 분기만 작업을 트리거합니다.Only one branch will trigger an action.조건과 일치는 순서대로 평가되고 조건이 true이거나 일치가 발견되면 중지됩니다.Conditions and matches are evaluated in order, and they stop if a condition is true or a match is found.

true인 조건이 없고 일치하는 항목이 없고 기본 결과를 지정하지 않으면 공백이 반환됩니다.Blank is returned if no conditions are true, no matches are found, and you don't specify a default result.

첫 번째 조건은 true이고 해당 결과가 반환됩니다.The first condition is true, and the corresponding result is returned.두 번째 조건도 true이지만, 인수 목록에서 true로 평가되는 조건보다 뒷부분에 표시되기 때문에 평가되지 않습니다.The second condition is also true, but it isn't evaluated because it appears later in the argument list than a condition that evaluates to true.

슬라이더가 공백이 아니어서 첫 번째 조건은 false입니다.The first condition is false because the slider isn't blank.슬라이더의 값이 숫자이고 해당 결과가 반환되기 때문에 두 번째 조건은 true입니다.The second condition is true because the slider's value is a number, and the corresponding result is returned.

! 연산자가 없으면Without the !조건이 false이므로 Navigate 함수가 실행되지 않습니다.operator, the condition is false, so the Navigate function doesn't run.Back 함수가 DefaultResult로 제공되었으므로 실행됩니다.The Back function was provided as a DefaultResult, so it runs.

truetrue

화면이 이전에 표시된 화면으로 돌아갑니다.The display goes back to the screen that was previously shown.

FirstName.Text의 값이 "Carlos", "Kirstin", "John" 순서로 비교됩니다.The value of FirstName.Text is compared against "Carlos", "Kirstin", and "John" in that order.'John'과 일치하는 항목이 있으므로 앱이 Screen3으로 이동합니다.A match is found with "John", so the app navigates to Screen3.

truetrue

화면이 Screen3으로 변경됩니다.The display is changed to Screen3.

단계별 가이드Step by step

텍스트 입력 컨트롤을 추가하고 기본적으로 해당 이름이 없는 경우 이름을 Text1로 지정합니다.Add a Text input control, and name it Text1 if it doesn't have that name by default.

레이블 컨트롤에 Order more!가 표시됩니다.The Label control shows Order more!Text1의 값이 20보다 크지만 40보다 작기 때문입니다.because the value of Text1 is more than 20 but less than 40.

Text1에 15를 입력합니다.In Text1, type 15.

레이블 컨트롤에 Order MANY more!가 표시됩니다.The Label control shows Order MANY more!Text1의 값이 20보다 작기 때문입니다.because the value of Text1 is less than 20.

Text1에 50을 입력합니다.In Text1, type 50.

입력한 값이 40 이상이기 때문에 레이블 컨트롤에 이 값이 표시됩니다.The Label control shows the value that you typed because it's more than 40.

Note

The feedback system for this content will be changing soon. Old comments will not be carried over. If content within a comment thread is important to you, please save a copy. For more information on the upcoming change, we invite you to read our blog post.