Restituisce un valore se una condizione è true e restituisce un altro valore se la stessa condizione è false.

Descrizione

La funzione If verifica le condizioni finché non viene trovato un risultato true. Il valore corrispondente viene quindi restituito come risultato. È possibile usare If per restituire risultati diversi in base ai confronti e ad altri test.

È possibile usare If nelle formule di comportamento per creare un ramo tra due azioni. Al massimo, verrà eseguito un ramo solo. Le condizioni vengono valutate in ordine e dopo che è stato trovato un risultato true, le altre condizioni non vengono verificate.

Se non viene soddisfatta alcuna condizione e viene restituito un numero dispari di argomenti, viene visualizzato il valore dell'ultimo argomento. Ciò avviene con la comune espressione If( Condition, Value, Else ). Se viene specificato un numero pari di argomenti, viene restituito un valore blank.

Sintassi

If( Condizione, Risultato [, AltroRisultato ] )
If( Condizione1, Risultato1 [, Condizione2, Risultato2, ... [ , AltroRisultato ] ] )

  • Condizioni: obbligatorio. Formule da verificare per il valore true. Queste formule solitamente contengono operatori di confronto, ad esempio <, >, e =, e verificano funzioni quali IsBlank e IsEmpty.
  • Risultati: obbligatorio. Il valore corrispondente da restituire per una condizione che restituisce true.
  • AltroRisultato: facoltativo. Il valore da restituire se non viene soddisfatta alcuna condizione. Se non si specifica questo argomento, viene restituito blank .

Esempi

Valori nelle formule

Nell'esempio seguente, un controllo di dispositivo di scorrimento denominato Slider1 ha il valore 25.

Formula Descrizione Risultato
If( Slider1.Value = 25, "Risultato1" ) La condizione è true, quindi viene restituito il risultato corrispondente. "Risultato1"
If( Slider1.Value > 1000, "Risultato1" ) La condizione è falsee non viene restituito AltroRisultato. blank
If( Slider1.Value = 25, "Risultato1", "Risultato2" ) La condizione è true, quindi viene restituito il risultato corrispondente. "Risultato1"
If( Slider1.Value > 1000, "Risultato1", "Risultato2" ) La condizione è false, quindi viene specificato e restituito AltroRisultato. "Risultato2"
If( Slider1.Value = 25, "Risultato1", Slider1.Value > 0, "Risultato2" ) La prima condizione è true, quindi viene restituito il risultato corrispondente. La seconda condizione è anche true, ma il corrispondente valore non viene restituito perché è incluso nell'elenco degli argomenti dopo la prima condizione. "Risultato1"
If( IsBlank( Slider1.Value ), "Risultato1", IsNumeric( Slider1.Value ), "Risultato2" ) La prima condizione è false perché il dispositivo di scorrimento ha un valore pari a 25 e non è blank. La seconda condizione è true perché il valore del dispositivo di scorrimento è un numero e quindi viene restituito il risultato corrispondente. "Risultato2"
If( Slider1.Value > 1000, "Risultato1", Slider1.Value > 50, "Risultato2", "Risultato3") La prima e la seconda condizione sono false, quindi è stato specificato e restituito AltroRisultato. "Risultato3"

Creazione di rami nelle formule di comportamento

Negli esempi seguenti, un controllo Input di testo denominato FirstName contiene il valore "John".

Formula Descrizione Risultato
If( ! IsBlank( FirstName.Text ), Navigate( Screen1, ScreenTransition.None ) ) La condizione è true, quindi viene eseguita la funzione Navigate. È possibile usare la funzione IsBlank per verificare se è stato specificato un campo modulo obbligatorio. Se la casella di input di testo fosse vuota, questa formula non avrebbe alcun effetto. true

La visualizzazione viene modificata a Screen1.
If( IsBlank( FirstName.Text ), Navigate( Screen1, ScreenTransition.None ), Back() ) Senza l'operatore . la condizione è false, quindi la funzione Navigate non viene eseguita. Poiché è stato specificato AltroRisultato, la funzione Back viene eseguita. true

La visualizzazione torna alla schermata visualizzata in precedenza.

Procedura dettagliata

  1. In una schermata vuota, aggiungere un controllo Input di testo e denominarla Text1 se non ha tale nome per impostazione predefinita.

  2. In Text1, digitare 15.

  3. Aggiungere un'etichetta e impostarne la proprietà Text con le formule seguenti:

Formula Descrizione Risultato
Text1.Text Senza condizione, il valore restituito è il valore del controllo di input di testo. "15"
If( Value(Text1.Text) < 40, "Ordina più!", Text1.Text ) La condizione è true, quindi viene restituito il valore corrispondente. "Ordina più!"
If( Value(Text1.Text) < 20, "Ordina MOLTO di più!", Value(Text1.Text) < 40, "Ordina più!", Text1.Text ) La prima condizione è true, quindi viene restituito il valore corrispondente. "Ordina MOLTO di più!"