-
1 # rsmsd3598
-
2 # 微笑的水歲月薄荷微
IF
全部顯示
全部隱藏
根據對指定的條件計算結果為TRUE或FALSE,返回不同的結果。
可以使用IF對數值和公式執行條件檢測。
語法
IF(logical_test,value_if_true,value_if_false)
Logical_test表示計算結果為TRUE或FALSE的任意值或表示式。例如,A10=100就是一個邏輯表示式;如果單元格A10中的值等於100,表示式的計算結果為TRUE;否則為FALSE。此引數可使用任何比較運算子。
Value_if_true是logical_test為TRUE時返回的值。例如,如果此引數是文字字串“預算內”,而且logical_test引數的計算結果為TRUE,則IF函式顯示文字“預算內”。如果logical_test為TRUE而value_if_true為空,則此引數返回0(零)。若要顯示單詞TRUE,請為此引數使用邏輯值TRUE。Value_if_true可以是其他公式。
Value_if_false是logical_test為FALSE時返回的值。例如,如果此引數是文字字串“超出預算”而logical_test引數的計算結果為FALSE,則IF函式顯示文字“超出預算”。如果logical_test為FALSE而value_if_false被省略(即value_if_true後沒有逗號),則會返回邏輯值FALSE。如果logical_test為FALSE且value_if_false為空(即value_if_true後有逗號並緊跟著右括號),則會返回值0(零)。Value_if_false可以是其他公式。
註解
最多可以使用64個IF函式作為value_if_true和value_if_false引數進行巢狀以構造更詳盡的測試。(示例3是巢狀IF函式的一個例子。)此外,若要檢測多個條件,請考慮使用LOOKUP、VLOOKUP或HLOOKUP函式。(示例4是LOOKUP函式的一個例子。)
在計算引數value_if_true和value_if_false時,IF會返回相應語句執行後的返回值。
如果函式IF的引數包含陣列(陣列:用於建立可生成多個結果或可對在行和列中排列的一組引數進行運算的單個公式。陣列區域共用一個公式;陣列常量是用作引數的一組常量。),則在執行IF語句時,陣列中的每一個元素都將計算。
MicrosoftExcel還提供了其他一些函式,它們可根據條件來分析資料。例如,如果要計算某單元格區域內某個文字字串或數字出現的次數,則可使用COUNTIF和COUNTIFS電子表格函式。若要計算基於某區域內一個文字字串或一個數值的總和,可使用SUMIF和SUMIFS工作表函式。
示例1
如果將示例複製到一個空白工作表中,可能會更易於理解。
如何複製示例
建立一個空白工作簿或工作表。
在幫助主題中選擇示例。
註釋請不要選擇行或列標題。
從幫助中選擇示例
按Ctrl+C。
在工作表中,選擇單元格A1,然後按Ctrl+V。
1
2
A
資料
50
公式說明(結果)
=IF(A2<=100,"預算內","超出預算")如果上面的數字小於等於100,則公式將顯示“Withinbudget”。否則,公式顯示“Overbudget”。(Withinbudget)
=IF(A2=100,SUM(B5:B15),"")如果上面數字為100,則計算單元格區域B5:B15,否則返回空文字("")
示例2
如果將示例複製到一個空白工作表中,可能會更易於理解。
如何複製示例
建立一個空白工作簿或工作表。
在幫助主題中選擇示例。
註釋請不要選擇行或列標題。
從幫助中選擇示例
按Ctrl+C。
在工作表中,選擇單元格A1,然後按Ctrl+V。
1
2
3
4
AB
實際費用預期費用
1500900
500900
500925
公式說明(結果)
=IF(A2>B2,"超出預算","預算內")檢查第一行是否超出預算(OverBudget)
=IF(A3>B3,"超出預算","預算內")檢查第二行是否超出預算(OK)
示例3
如果將示例複製到一個空白工作表中,可能會更易於理解。
如何複製示例
建立一個空白工作簿或工作表。
在幫助主題中選擇示例。
註釋請不要選擇行或列標題。
從幫助中選擇示例
按Ctrl+C。
在工作表中,選擇單元格A1,然後按Ctrl+V。
1
2
3
4
A
成績
45
90
78
公式說明(結果)
=IF(A2>89,"A",IF(A2>79,"B",IF(A2>69,"C",IF(A2>59,"D","F"))))給第一個成績指定一個字母等級(F)
=IF(A3>89,"A",IF(A3>79,"B",IF(A3>69,"C",IF(A3>59,"D","F"))))給第二個成績指定一個字母等級(A)
=IF(A4>89,"A",IF(A4>79,"B",IF(A4>69,"C",IF(A4>59,"D","F"))))給第三個成績指定一個字母等級(C)
在上例中,第二個IF語句同時也是第一個IF語句的引數value_if_false。同樣,第三個IF語句是第二個IF語句的引數value_if_false。例如,如果第一個logical_test(Average>89)為TRUE,則返回“A”;如果第一個logical_test為FALSE,則計算第二個IF語句,以此類推。
用下列關鍵字指定數字的字母等級。
如果成績是則返回
大於89A
80到89B
70到79C
60到69D
低於60F
示例4
在本示例中,要使用LOOKUP函式而不是IF函式,因為要測試十三個條件,您會發現這樣做會更易於閱讀和維護。
如果將示例複製到一個空白工作表中,可能會更易於理解。
如何複製示例
建立一個空白工作簿或工作表。
在幫助主題中選擇示例。
註釋請不要選擇行或列標題。
從幫助中選擇示例
按Ctrl+C。
在工作表中,選擇單元格A1,然後按Ctrl+V。
1
2
3
4
A
成績
45
90
78
公式說明(結果)
=LOOKUP(A2,{0,60,63,67,70,73,77,80,83,87,90,93,97},{"F","D-","D","D+","C-","C","C+","B-","B","B+","A-","A","A+"})給第一個成績指定一個字母等級(F)
=LOOKUP(A3,{0,60,63,67,70,73,77,80,83,87,90,93,97},{"F","D-","D","D+","C-","C","C+","B-","B","B+","A-","A","A+"})給第二個成績指定一個字母等級(A-)
=LOOKUP(A4,{0,60,63,67,70,73,77,80,83,87,90,93,97},{"F","D-","D","D+","C-","C","C+","B-","B","B+","A-","A","A+"})給第三個成績指定一個字母等級(C+)
回覆列表
你可以和數學函式做比較,有相似之處。數學上函式就是一個或者幾個變數透過固定的運算規則運算可以得到一個結果的式子,對吧,計算機上的函式也一樣,是一個軟體概念,也是透過對一個或者幾個資料進行處理得到一個結果或者只執行操作但沒有結果的完整程式程式碼段。這樣的程式碼段可以被重複引用而不必針對每次解決相同問題的需求而撰寫重複類似的程式碼了。比如你要算三個數的和,就可以寫一個函式:intAddThreeNum(inta,intb,intc){returna+b+c;}這樣以後程式裡每次要使用求三個數的和,你都可以這樣引用:inta;a=AddThreeNum(1,4,12);能懂不?。。。