簡單的 excel if函數應用
例子:下圖數據在d列顯示如下結果:如果數據1大於60則顯示合格,否則顯示不合格。
那麼在d2單元格輸入以下公式:
=if(a2>60,"合格","不合格")
然後向下拖拽,自動生成數據,如下圖D列效果。
if函數必須的條件:
每一個excel if函數必須使用英文的括號括起來;
括號內為三個數據,第一個數據是條件(如上例中的a2>60),第二數據為滿足第一個數據後返回的結果,通常使用英文的引號括起來,第三個數據是不滿足第一個數據時需要返回的結果;(如果不輸入第三個數據可以嗎,當然可以,返回什麼結果自己試試吧)
經常出現的錯誤:
其中的符號如逗號和引號皆為英文(也就是所謂的半角),若輸入中文符號則錯誤;
if的右括號放在了條件的後面;(這是在多個條件使用if函數進行嵌套時非常容易犯的錯誤)
if函數嵌套用法
例子:下圖數據,在e列顯示如下結果:如果A列的數據1小於60則顯示不合格,如果大於等於60而小於80則顯示合格,如果大於等於80而小於90顯示良好,如果大於等於90則顯示優秀。
這是經典的if嵌套應用例子,需要我們使用 if函數的嵌套。
if嵌套書寫前,首先你要理解要求,並將要求數學化,也就是使用數學的模式表達出來,if函數多重嵌套一般情況下我們可以將它看做分段函數,那麼問題就很容易解決了。例子可以在E2單元格使用如下代碼:
=if(a2<60,"不合格",if(a2<80,"合格",if(a2<90,"良好","優秀")))
當數據1小於60時,顯示不合格,這時在 不合格 逗號的右側默認就是>=60的情況,那麼根據題意,只需再滿足<80即可顯示合格,於是我們將最簡單的 if函數的第三個數據變成了一個if函數,依次類推,每一次可以將一個if函數作為每一個基本函數的第三個數據,從而形成多種嵌套。
(圖例中多餘在最後一個 if前後加了一個括號,當然這種方法也正確,但不是最簡單的。)
其實還有另一種寫法,也就是將嵌套的if寫在基本if函數的第二個數據的位置,如下圖,不過這種寫法不常用,也比較不好理解,並且容易寫錯,不推薦大家使用。
if函數的高級用法
if函數除了可以引用單元格的數據還可以引用函數值或者其他表格甚至是文件的數據。下面舉個小例子:
下圖數據1中,如果當前數字超過本列數字的平均值則顯示合格,達不到平均值的顯示不合格。
函數代碼如下:
=if(a2>average($a$2:$a$9),"合格","不合格")
這句話是這樣理解的,當數據a2大於a2到a9所有數據的平均數時,返回合格,否則返回不合格。
其中average( )是求平均數函數,而$a$2:$a$9是絕對定位a2到a9的區域,加了$符號的作用是不會隨著公式的拖動而改變,如果不加$這個符號,我們在拖動單元格自動生成數據時求平均數的區域a2到a9區域就會公式的拖動而變化,a2就會變成a3,a9就會變為a10,如果橫向拖動時a2就會變成b2,這可不是我們想要的。但是average前面的a2沒有加,那是我們想讓它隨著公式拖動而變化。關於這一點你可以自己嘗試,如想了解更多關於excel引用可以參考這裡,這篇文章還講到了對其他表格的引用,有興趣可以看看。
這個例子只是簡單的excel if函數舉例,你可以根據自己的需要使用更加複雜的函數,將其和if函數組合使用,可以得到非常廣闊的使用範圍,大家可以自己試試,我只是簡單闡述,你有什麼感受可以留言,更多excel內容看這裡。