邏輯處理函數If 函數?在Excel函數中有個我們用得很多的邏輯處理函數If 函數,它也被稱為如果函數。因為我們經常會說如果怎么樣就怎么樣否則又怎么樣。努力回想一下,是不是每天都會說很多這樣的話或按這樣邏輯做了很多事?
那它在Excel里具體怎么用呢,首先來看一下官方說明書中描述:
如果指定條件的計算結果為 TRUE,IF 函數將返回某個值;如果該條件的計算結果為 FALSE,則返回另一個值。
例如,如果 A1 大于 10,公式 =IF(A1>10,”大于 10″,”不大于 10″) 將返回“大于 10”,
如果 A1 小于等于 10,則返回“不大于 10”。(有沒有發現語法順序有什么特點)
既然函數能和我們說話扯上一定的聯系,那它就會有語法,再來看看官方的語法說明IF(logical_test, [value_if_true], [value_if_false])
注意: 公式中所有符號必須都是英文的,否則會返回錯誤值哦!
看了這描述,有沒有感覺到壓力有所減少呢?還是有人表示壓力山大,除了認識if, 里面的還是“看…不…懂”啊!(剛開始我也看不懂)兩言不合就上實例吧!
又到了招生時間了,領導叫把每個學生錄取情況交給他,錄取條件是 500分及以上的才錄取,否則都不錄取。先看一下數據圖
寫公式之前來說一下手工是怎么處理的吧,首先看B2單元格的分,判斷它是不是大于等于500,如果是就返回錄取,否則就就返回不錄取!手工操作的邏輯對了,就來看公式,公式效果圖如下:
此公式中B2>=500就是一個邏輯表達式,因單元格B2的值是 471, 471>=500 是不成立的,所以表達式結果為 False,公式就會返回第三參數“不錄取”,B4單元格的值為 537,537是大于500的,所以這達式的結果為True,公式就返回了第二參數“錄取”
有同學就會說了,如果小于500就不錄取,否則就錄取,那公式要怎么改呢??
來看一下改了順序的公式
怎么樣,是不是和我們描述的順序是一樣的?
有沒有點感覺了呢?咱們換個玩法吧,給總分500分以上的的同學獎勵500,不到500分的就告訴他沒有,公式效果圖如下:
和錄取的公式區別就在 參數2和3的不同,那是因為我們要的結果不同了(換湯不換藥,換個包裝繼續賣錢).
這么快就完成了,趕緊把文件交給領導,結果他看都沒看,說再給我分科判斷一下吧,要求是文科的錄取分數線為450,理科錄取分數線為500
多了一個判斷,怎么辦呢,好不容易if有點眉目了,這難度一下就變大了(打鐵趁熱嘛),不要怕,按邏輯對號入座,來看一下公式效果圖:
D2單元格輸入公式,=IF(C2=”文科”,IF(B2>=450,”錄取”,”不錄取”),IF(C2=”理科”,IF(B2>=500,”錄取”,”不錄取”),”錯誤”)),下拉
公式解:首先判斷C2是不是等于文科,因為C2不是文科,所以會執行參數3的計算
參數3為 IF(C2=”理科”,IF(B2>=500,”錄取”,”不錄取”),”錯誤”)
因此會接著判斷 C2 是不是等于理科, 是理科 就對按理科的分數做判斷, 要求理科大于等于500才錄取, 所以最終結果是 不錄取
按這常規邏輯分析后面的公式,有沒有發現IF還是很接近生活的呢??
可是D6怎么會有個錯誤呢??這錯誤是什么意思呢?
按照寫的邏輯來分析,首先判斷的是不是文科,C6的值明顯不是文科,所以會進入下一個判斷
下一個判斷它是不是理科,如果不是就返回錯誤了……
可我看到的明明就是 理科啊 ??為什么會返回錯誤了呢???
不要急,我們來檢查一下,Excel干活可是很認真的
首先選中B6,如下圖
然后按一下F9鍵,把單元格引用轉為值來看一下,效果如下圖
細心一點會發現,原來科字后面多了一個空白符,變成了3個字符了,這就是為什么看到的是理科,公式卻返回錯誤了!把那空白的字符刪除后,判斷就正常了
萬變不離其宗!
小編一直認為把IF函數邏輯弄清楚、學好了,將來的函數嵌套也就沒那么難了,所以小伙伴們,多動手練練吧!