IFS

IFS 函數會檢查指定的表示式,並根據第一個被評估出布林值 TRUE 的條件。

IFSIFS 表示式ifs-trueIFS 表示式…ifs-true…)

IFS 表示式: 邏輯表示式。 IFS 表示式可以包含任何內容,只要表示式可以評估為布林值。如果指定的表示式評估出數字,則會將 0 視同為 FALSE,而其他任何數字將視為 TRUE。

ifs-true: 如果 IFS 表示式為 TRUE 時傳回的值。 ifs-true 可以包含任何值。如省略 ifs-true,(有逗號,但無值)且 IFS 表示式評估為 TRUE,則 IFS 會傳回 0。

IFS 表示式…: IFS 表示式為 FALSE 時要計算的邏輯表示式(可留空)。 IFS 表示式可以包含任何內容,只要表示式可以評估為布林值。如果指定的表示式評估出數字,則會將 0 視同為 FALSE,而其他任何數字將視為 TRUE。

ifs-true…: 如果 IFS 表示式…為 TRUE 時傳回的值。 ifs-true 可以包含任何值。如省略 ifs-true…,(有逗號,但無值)且 IFS 表示式…評估為 TRUE,則 IFS 會傳回 0。

備註

  • 如所有表示式皆為 FALSE,就會傳回錯誤。

  • 為可以在公式中最後的 IFS 表示式…輸入「TRUE」,並在後方輸入ifs-true…的預設值,以在所有前面的表示式(包括 IFS 表示式和所有的IFS 表示式…)都評估為 FALSE 時指定結果。

使用 IFS 來進行多項比較

以下的表格顯示學生成績的列表。

A

B

C

1

學生

分數

等級

2

1

4

優異

3

2

2

學徒

4

3

3

精通

5

4

未完成

6

5

3.2

熟練+

7

6

3.2

初學

以下的表格會透過使用多個 IFS 表示式…引數來傳回與上面的表格相關的等級。

「公式編輯器」顯示公式 =IFS(B2=4,"優異",B2=3,"精通",B2=2,"學徒",B2=1,"初學")。

在此公式中使用了以下引數:

  • IFS 表示式:B2=4 其檢查 B2 是否等於 4。

  • ifs-true:「優異」,如 B2 為等於 4 時要傳回的字串。

  • IFS 表示式…:「B2=3,」其檢查 B2 是否等於 3。

  • ifs-true…:「精通」,如 B2 為等於 3 時要傳回的字串。

  • IFS 表示式…:「B2=2,」其檢查 B2 是否等於 2。

  • ifs-true…:「學徒」,如 B2 為等於 2 時要傳回的字串。

  • IFS 表示式…:「B2=1,」其檢查 B2 是否等於 1。

  • ifs-true…:「初學」,如 B2 為等於 1 時要傳回的字串。

如要配搭表格中的其他輸入格使用上面的公式,請將每個條件表示式中的 B2 改為其他包含分數的輸入格。

IFS 表示式…使用 TRUE

有時候,沒有表示式被計算為 TRUE,但除了讓系統傳回錯誤,你可以在最後的 IFS 表示式設定傳回的字串。在上面的表格中,「學生 4」沒有分數,所以之前的公式會為該學生傳回錯誤。也許此學生缺席並仍需要完成作業,所以你可以加入另一個 IFS 表示式來將欠缺的分數標記為「未完成」,而不是留下錯誤:

「公式編輯器」顯示公式 =IFS(B5=4,"優異",B5=3,"精通",B5=2,"學徒+",B5=1,"初學",TRUE,"未完成")。

在此範例中,輸入格參照已被更改以配合「學生 4」的分數輸入格,但所有引數都與上面的一樣,且最後方多加了一個 IFS 表示式

  • IFS 表示式…:TRUE,其已加入為最後一個表示式。

  • ifs-true…:「未完成」,如沒有其他引數被計算為 TRUE 時要傳回的字串。

更多複雜的比較

在某些情況下,你可能會有更多複雜的表示式,在其中你需要混合使用比較運算子。例如,上面的比重使用整數,但如果另一個學生(學生 6)的得分為 3.2。你可以使用類似以下的公式來代表得分介乎四個主要等級之間的學生(例如 B6 為 3.2,「學生 5」的分數)。

「公式編輯器」顯示公式 =IFS(B6=4,"優異", B6>3, "精通+",B6=3,"精通",B6>2,"學徒+",B6=2,"學徒",B6>1,"初學+",B5=1,"初學",TRUE,"未完成")。

在此範例中,「優異」、「精通」、「學徒」和「初學」等級之間加入了額外的 IFS 表示式… 引數。

  • IFS 表示式…:「B6>3」其檢查 B6 是否大於 3。

  • ifs-true…:「精通+」,如 B2 大於 3 時要傳回的字串。

  • IFS 表示式…:「B6>2」其檢查 B6 是否大於 2。

  • ifs-true…:「學徒+」,如 B2 大於 2 時要傳回的字串。

  • IFS 表示式…:「B6>1」其檢查 B6 是否大於 1。

  • ifs-true…:「初學+」,如 B2 大於 1 時要傳回的字串。

這公式能有用是因為 IFS 會尋找第一個結果為 true 的表示式。如學生的分數不是 4,IFS 會檢查分數是否大於 3,「學生 5 」會收到等級「精通+」。另一個範例,一個得分為 2.5 的學生會收到等級「學徒+」,因為他們的分數不是 4、大於 3 或者是 3,但其大於 2。

配搭其他函數使用 IFS

IFS 可配搭其他函數使用。例如,此函數使用 MOD 來決定輸入格 A2 中的年份(在此範例,A2=2020)是否為閏年。

「公式編輯器」顯示公式 =IFS(MOD($A2,4)≠0 ,FALSE,MOD($A2,100)≠0,TRUE,MOD($A2,400)≠0,FALSE, TRUE, TRUE。

如要判定兩個值是否相等,請使用比較運算子 <>。

其他範例

=IFS(A2>91,"A",A2>82,"B",A2>73,"C",A2>64,"D",TRUE,"F") 會為所有大於 91 的數字傳回等級「A」,然後為大於 82 但小於 92 的數字傳回「B」,如此類推,所有小於 65 的值則會傳回「F」。

=IFS(A2>91,"A",A2>82,"B",A2>73,"C",A2>64,"D",A2<>0,"已嘗試",TRUE,"不合格") 會為所有大於 91 的數字傳回等級「A」,然後為大於 82 但小於 92 的數字傳回「B」,如此類推,所有小於 65 但不等於 0 的值則會傳回「已嘗試」。如分數小於 0,該公式會傳回「不合格」。

讓 A2 包含「A dog」

讓 A1 = COUNTMATCHES(A2, REGEX("\w+"))

=IFS(A1 = 0, "沒有單字", A1 = 1, "一個單字", A1 = 2, "兩個單字", A1 > 2, "多個單字") 會傳回 「兩個單字」。

也請參閲ANDIFNOTOR
Morty Proxy This is a proxified and sanitized view of the page, visit original site.
有幫助?
字元限制: 250
字元數目上限為 250。
感謝您提供意見。
Morty Proxy This is a proxified and sanitized view of the page, visit original site.