
Il modo più generale per testare le condizioni è utilizzare la funzione If. Diamo un'occhiata a questa funzione nel contesto dell'iterazione delle righe di una tabella dati per popolare una colonna denominata "voto" utilizzando la funzione For Each Row. In effetti, esamineremo ciascuna delle funzioni condizionali nel contesto della funzione For Each Row. Ora, il numero di argomenti per la funzione If varia, ma sono richiesti almeno due argomenti. Il primo argomento è sempre una condizione: viene valutato e interpretato come un risultato booleano. Se il risultato di tale condizione è vero, il secondo argomento viene valutato e restituito come risultato della funzione If. Ma se il risultato della condizione è falso, il secondo argomento non viene valutato e la funzione If restituisce un valore mancante. Naturalmente, è anche possibile chiamare la funzione If con tre argomenti. In tal caso, il primo argomento viene valutato e interpretato come un risultato booleano. Se la condizione è vera, il secondo argomento viene valutato e restituito come risultato della funzione If. Se la condizione è vera, il terzo argomento non verrà valutato. Tuttavia, se il risultato del primo argomento è falso, il secondo argomento non verrà valutato e il terzo argomento verrà valutato e restituito come risultato della funzione If. È anche possibile chiamare la funzione If con quattro argomenti. JMP valuta il primo argomento e lo interpreta come un risultato booleano. Se il risultato è vero, il secondo argomento verrà valutato e restituito come risultato della funzione If, mentre il terzo e il quarto argomento non verranno valutati. Se il risultato è falso, il secondo argomento non verrà valutato e il terzo argomento verrà valutato e interpretato come risultato booleano. Se il risultato del terzo argomento è vero, il quarto argomento verrà valutato e restituito come risultato della funzione If. Tuttavia, se il risultato del terzo argomento è falso, il quarto argomento non verrà valutato e la funzione If restituirà un valore mancante. E indovinate un po'? È anche possibile chiamare la funzione If con cinque argomenti. Il primo argomento verrà valutato e interpretato come risultato booleano. Se il risultato è vero, il secondo argomento viene valutato e restituito come risultato della funzione If. Il terzo, il quarto e il quinto argomento non vengono valutati. Se il risultato è falso, il terzo argomento viene valutato e interpretato come un risultato booleano. Se il risultato del terzo argomento è vero, il quarto argomento viene valutato e restituito come risultato della funzione If. Il secondo e il quinto argomento non vengono valutati. Infine, se il risultato è falso, il quarto argomento non viene valutato e il quinto argomento viene valutato e restituito come risultato. In effetti, è possibile assegnare un numero qualsiasi di argomenti alla funzione If. Se il numero di argomenti è pari, gli argomenti dispari sono condizioni e gli argomenti pari sono i risultati restituiti se una condizione è vera. Se nessuna delle condizioni è vera, la funzione If restituisce un valore mancante. Se il numero di argomenti è dispari, l'ultimo argomento è un risultato Else, ed è quello che viene restituito se nessuna delle condizioni è vera. È importante notare che non appena una condizione viene valutata come vera e il corrispondente argomento risultato viene valutato, nessun altro argomento verrà valutato. In altre parole, l'istruzione If potrebbe avere più di una condizione vera, ma non appena viene riscontrata la prima condizione vera, nessuna delle altre condizioni verrà valutata.