使用匹配函數和選擇函數
條件通常僅限於特定值,這些值可以是數字或字元資料。在這種情況下,您可以使用 Match 函數。 Match 函數是一個特殊的條件函數,它接受三個或更多參數。第一個參數被求值並用作要匹配的值。第二個參數被求值並解釋為布林值。如果值為真(換句話說,第二個參數與第一個參數的結果相符),則對第三個參數進行求值,並將該結果作為 Match 函數的結果傳回。否則,不會對第三個參數進行求值,Match 函數將傳回一個缺失值。與 If 函數類似,您可以根據需要設定任意數量的值和結果參數對;並且與 If 函數類似,一旦傳回真結果,就會對對應的奇數參數進行求值,其餘參數均不求值。當然,Match 函數也可以包含一個 else 結果。使用這個可選的最後一個參數意味著函數永遠不會傳回缺失值。相反,如果前面所有偶數參數均未傳回 true 結果,則函數會傳回 else 結果。更特殊的情況是條件由索引(即大於零的整數值)表示。在這種情況下,您可以使用 Choose 函數,該函數至少需要兩個參數。第一個參數是一個表達式,對其進行求值並用於確定正確結果參數的索引,然後傳回對應的結果作為 Choose 函數的結果。在所示的範例中,我們使用 Day of Week 函數,該函數為一週中的每一天傳回一個整數值。因此,如果表達式的計算結果為例如,則傳回第三個結果(在本例中為星期二)。與 If 和 Match 函數不同,Choose 函數永遠不會傳回缺失值。相反,如果表達式的結果是大於結果參數數量的索引,則將對最後一個參數進行求值並將其作為 Choose 函數的結果傳回。