二維碼 購(gòu)物車
部落窩在線教育歡迎您!

IF函數(shù){1,0}結(jié)構(gòu)原理和用法

?

作者:小窩來(lái)源:部落窩教育發(fā)布時(shí)間:2023-09-24 19:51:54點(diǎn)擊:1462

分享到:
0
收藏    收藏人氣:0人
版權(quán)說(shuō)明: 原創(chuàng)作品,禁止轉(zhuǎn)載。
編按:

詳細(xì)講解IF函數(shù)的{1,0}結(jié)構(gòu)的原理和用法。會(huì)靈活使用該結(jié)構(gòu)的都是高手。

 

凡是做過(guò)反向查找的人,對(duì)IF函數(shù)的{1,0}(或者{1;0}結(jié)構(gòu)都不陌生:它可以交換兩列(或兩行)數(shù)據(jù)。

 

 

(圖中效果, Excel 2021版本以下的,可以先選中D2:E9,然后輸入公式,最后按Ctrl+Shift+Enter三鍵結(jié)束。)

 

但是,它的原理是什么?它只能寫(xiě)成{1,0}嗎?它有哪些用法?

今天我們來(lái)說(shuō)說(shuō)。

1.原理

用到兩個(gè)原理,IF函數(shù)自身的取值邏輯和數(shù)組運(yùn)算邏輯。

1IF函數(shù)取值邏輯

=IF(條件,條件為真的結(jié)果,條件為假的結(jié)果)

條件為真,邏輯值就是TRUE,常用1表示;條件為假,邏輯值就是FALSE,常用0表示。

取值邏輯:當(dāng)條件為真,在第二參數(shù)中取值;當(dāng)條件為假,在第三參數(shù)中取值。

譬如:公式=IF(1,5,10),結(jié)果是5;公式=IF(0,5,10),結(jié)果是10。

 

2)數(shù)組邏輯

1)數(shù)組運(yùn)算要求行列一一對(duì)應(yīng)。
如果兩個(gè)數(shù)組行列不對(duì)應(yīng),會(huì)自動(dòng)擴(kuò)展,無(wú)法自動(dòng)擴(kuò)展的,缺失的部分將得到錯(cuò)誤值。

2)數(shù)組運(yùn)算的結(jié)果也是一個(gè)數(shù)組。
其行數(shù)等于參與運(yùn)算的數(shù)組的最大行,其列數(shù)等于參與運(yùn)算的數(shù)組的最大列。

譬如,有如下兩個(gè)數(shù)組。數(shù)組1B17:C20,數(shù)組2D17:E20,都是24行。

 

 

用數(shù)組2-數(shù)組1,結(jié)果也是24行的數(shù)組。用數(shù)組2的第1列減去數(shù)組1的第1列;數(shù)組2的第2列減去數(shù)組1的第2列;彼此是對(duì)應(yīng)相減的,不會(huì)出現(xiàn)第2列減去第1列。行也是如此。這就是數(shù)組按行列一一對(duì)應(yīng)運(yùn)算。

 

 

如果運(yùn)算的數(shù)組無(wú)法一一對(duì)應(yīng),單列單行數(shù)組可以自動(dòng)按需進(jìn)行復(fù)制擴(kuò)展。

譬如,下方數(shù)組3只有單列,當(dāng)用數(shù)組4減去它,其結(jié)果與數(shù)組6減去數(shù)組5的一樣,說(shuō)明數(shù)組3自動(dòng)復(fù)制了一列出來(lái)。

 

 

非單列單行數(shù)組無(wú)法自動(dòng)復(fù)制擴(kuò)展,缺少對(duì)應(yīng)的行列運(yùn)算時(shí)會(huì)出現(xiàn)錯(cuò)誤值。

譬如下方數(shù)組843列,而數(shù)組7只有42列,它們的結(jié)果應(yīng)是43列的數(shù)組。因?yàn)閿?shù)組7無(wú)法自動(dòng)復(fù)制擴(kuò)展,所以前方兩列相減結(jié)果正常,第3列則得到錯(cuò)誤值。

 

 

3{1,0}結(jié)構(gòu)交換數(shù)據(jù)的本質(zhì)

用公式=IF({1,0},C3:C6,B3:B6)交換下方數(shù)組AB。

 

 

條件{1,0}是一行兩列的數(shù)組;數(shù)組AB都是41列的數(shù)組。它們的結(jié)果應(yīng)該是4行兩列。

具體的運(yùn)行過(guò)程如下:

1)首先3個(gè)數(shù)組都按數(shù)組規(guī)則自動(dòng)擴(kuò)展,都變成42列。

 

2)然后按規(guī)則取值

條件數(shù)組第1列第1行是1,條件為真,所以在TRUE結(jié)果數(shù)組B中取第1列第1行的值;

條件數(shù)組第2列第1行是0,條件為假,所以在FALSE結(jié)果數(shù)組A中取第2列第1行的值。

最終結(jié)果:

 

 

2.結(jié)構(gòu)變化

變化1:交換10的位置,如IF({0,1}……)

相比{1,0},{0,1}的結(jié)果第一列是FALSE中的第一列。

 

 

變化2: 可以是多個(gè)1或者0的數(shù)字,如IF({1,1,0}……)

條件中的第1個(gè)1,位于第1列,條件為真,所以在TRUE結(jié)果中找第1列;

條件中的第2個(gè)1,位于第2列,條件為真,所以在TRUE結(jié)果中找第2列;

條件中的0,位于第3列,條件為假,所以在FALSE結(jié)果中找第3列。

 

 

變化3:可以是任何數(shù)字,如IF({-1,2,0}……)

Excel中,數(shù)字0表示FALSE,其他數(shù)字都能代表TRUE。

 

 

變化4:可以是公式結(jié)果,如IF(MOD(COLUMN(A1:C1),3)……)

把嵌套的公式結(jié)果作為條件。譬如MOD(COLUMN(A1:C1),3),實(shí)際等于{1,2,0}

 

 

3.IF{1,0}結(jié)構(gòu)經(jīng)典運(yùn)用

1)反向查找

如圖。

 

 

2)多條件查找

譬如下方按部門(mén)與商品名稱、日期查找銷售數(shù)量。

 

 

公式:

=MAX(IF(($A$2:$A$10=$A14)*($B$2:$B$10=$B14),INDEX($C$2:$H$10,,MATCH(C$13,$C$1:$H$1,0))))

 

 

該公式比用VLOOKUP多條件查找簡(jiǎn)潔。

 

3)經(jīng)典一對(duì)多

求銷售一部銷售的所有產(chǎn)品。

 

 

 

本文配套的練習(xí)課件請(qǐng)加入QQ群:902294808下載。

Excel高手,快速提升工作效率,部落窩教育Excel精品好課任你選擇!

掃下方二維碼關(guān)注公眾號(hào),可隨時(shí)隨地學(xué)習(xí)Excel

IMG_256

相關(guān)推薦:

萬(wàn)金油公式

多條件查找,用Xlookup函數(shù)最簡(jiǎn)單

橫向查找HLOOKUP的獨(dú)特優(yōu)勢(shì)

Excel計(jì)算不準(zhǔn)的原因:浮點(diǎn)運(yùn)算

版權(quán)申明:

本文作者小窩;部落窩教育享有稿件專有使用權(quán)。若需轉(zhuǎn)載請(qǐng)聯(lián)系部落窩教育。