邏輯函數
邏輯函數簡介
邏輯函數,是一類回傳值為 true 、false 或其他自訂邏輯值的函數。
首先,先來瞭解關於邏輯函數的幾個基本概念:
- true:代表判斷後的結果是真的,正確的,也可以用1表示;
- false:代表判斷後的結果是假的,錯誤的,也可以用0表示;
- logical1, [logical2], …:代表不同的參數邏輯值。
AND
AND 函數可用於表示:當所有參數邏輯值為 true 時,返回 true;只要有任何一個參數邏輯值為 false,則返回false。
函數用法:
AND(logical1, logical2, …)
函數範例:
1. AND(A,B),表示如果同時滿足條件 A,B,則返回 true,否則返回 false。例如:
- AND(1<5,1<6),返回結果為 true;
- AND(1<5,7<6),返回結果為 false。
2. AND 函數可與 IF 函數等組合使用。如成績判定時,需設定當三科成績均大於 90 分時為“優秀”,否則為“其他”,則設定公式為IF(AND(語文成績>90,數學成績>90,英語成績>90),"優秀","其他")。
FALSE
FALSE 函數可直接返回邏輯值 false。
函數用法:
FALSE()
函數範例:FALSE 函數一般不會作為函數單獨使用,可與其他函數一起使用,或作為判斷邏輯的結果。如,倉儲管理中,判斷庫存數量與盤點數量是否一致時,可設定公式為IF(庫存數量==庫存盤點數量,TRUE(),FALSE()),即數量一致時返回 true,反之返回 false。
IF
IF 函數可用於判斷一個條件能否滿足;如果滿足返回一個值,如果不滿足則返回另外一個值。
函數用法:
IF(logical_test,value_if_true, value_if_false)
其中各參數的含義如下:
- logical_test:必需,邏輯表達式,要判斷是否成立的條件;
- value_if_true:必需,滿足條件時的返回值;
- value_if_false:必需,不滿足條件時的返回值。
函數範例:
1. IF 函數的基礎應用:
IF(A,B1,B2),表示如果滿足條件 A,那麼返回 B1,否則返回 B2。
如,成績判定時,規定 60 分以下,為不及格;60 分以上,為及格。則設定公式為IF(成績<60,"不及格","及格")。
2. IF 函數的多層嵌套應用:
如,成績判定時,規定 60 分以下,為不及格;60-79 分,為中;80-89 分,為良;90 分以上,為優。則設定公式為IF(成績<60,"不及格",IF(成績<80,"中",IF(成績<90,"良","優")))。
3. IF 函數應用於下拉單選/單選:
單選題場景中,在下拉單選/單選中新增題目:”一去二三裡"的下一句是什麼?“,設定選項為:
- A.煙村四五家
- B.亭台六七座
- C.八九十枝花
當選擇 A 時得 3 分,否則 0 分;則可在分數欄位中設定公式為IF( 一去二三裡 的下一句是什麼?=="A.煙村四五家",3,0)。
4. IF 函數應用於下拉複選框/複選:
多選題場景中,在下拉複選框/複選中新增題目:”下列說法正確的是?(多選題)“,設定選項為:
- A.管理員可以在應用管理界面新建一個表單
- B.可以透過匯入 excel 建立一個表單
- C.可以從當前應用或者其它應用複製一個表單
如全選得 3 分,否則 0 分;則可在分數欄位中設定公式為IF(下列說法正確的是?(多選題)=="A.管理員可以在應用管理界面新建一個表單,B.可以透過匯入excel建立一個表單,C.可以從當前應用或者其它應用複製一個表單",3,0)。
IFS
IFS 函數可用於判斷是否滿足一個或多個條件,且返回符合第一個 true 條件的值。 IFS 函數可以取代多個嵌套 IF 語句,並且有多個條件時更方便閱讀。
函數用法:
IFS(logical_test1, value_if_true1, logical_test2, value_if_true2, … ,logical_testn, value_if_truen)
其中各參數的含義如下:
- logical_test1:必需,計算結果為 true 或 false 的條件;
- value_if_true1:必需,當 logical_test1 的計算結果為 true 時要返回結果,可以為空;
- logical_test2…logical_testn:非必需,計算結果為 true 或 false 的條件;
- value_if_true2…value_if_truen:非必需,當 logical_testn 的計算結果為 true 時要返回結果。 每個 value_if_truen 對應於一個條件 logical_testn,可以為空。
附注:
n 的最大值為 127,即 IFS 函數最多允許 127 個不同的條件。
函數範例:IFS(A1,B1,A2,B2,A3,B3…),表示滿足條件 A1 時,返回結果 B1;滿足條件 A2 時,返回結果 B2;滿足條件 A3 時,返回結果 B3。依次類推。
如,可透過 IFS 函數來計算成績的等級,設定公式為IFS(成績<60,"不及格",成績<=79,"及格",成績<=89,"良好",成績>=90,"優秀")。點擊體驗效果
NOT
NOT 函數可用於對其參數的邏輯求反,當邏輯為 true 時,返回結果 false;當邏輯為 false 時,返回結果 true。
函數用法:
NOT(logical)
函數範例:
1. NOT(A),表示如果 A 為 true 時,則返回 false;A 為 false 時,則返回 true。例如:
- NOT(50<60),返回 false;
- NOT(90<60),返回 true。
2. NOT 函數可與 IF 函數等組合使用,如成績判定時,當成績不低於 60 分為及格,否則為不及格,則設定公式為:IF(NOT(成績<60),"及格","不及格")。
OR
OR 函數可用於表示:參陣列中,任何一個參數邏輯值為 true 時,即返回 true;只有當所有邏輯參數值為 false 時,才返回 false。
函數用法:
OR(logical1,logical2, …)
函數範例:
1. OR(A,B),表示如果滿足條件 A,或者滿足條件 B(即 2 個條件中滿足一個或一個以上),則返回 true,否則返回 false。例如:
- OR(1<2,2<2),返回結果為 true;
- OR(3<2,2<2),返回結果為 false。
2. OR 函數可與 IF 函數等組合使用,如成績判定時,當任意一門成績大於 90 分時,即為“優秀”,否則為“其他”,則設定公式為IF(OR(語文成績>90,數學成績>90,英語成績>90),"優秀","其他")。
TRUE
TRUE 函數可直接返回邏輯值 true。
函數用法:
TRUE()
函數範例:TRUE 函數一般不會作為函數單獨使用,可與其他函數一起使用,或作為判斷邏輯的結果。如,判斷欄位值是否為空時,設定公式為IF(ISEMPTY(方案選擇)==TRUE(),"未選擇","已選擇"),為空時值為TRUE(),即返回“未選擇”,反之返回“已選擇”。
XOR
XOR 函數可返回所有參數的異或值。異或的含義是:兩個邏輯值相同,返回 false,兩個邏輯值不同,則返回 true。
函數用法:
XOR(logical1,logical2, …)
函數範例:如,判斷兩個答案值是否一致時,可設定公式為XOR(答案1<90,答案2<90),答案一致時返回 false,不一致時返回 true。