|
分類:邏輯函數(shù) IFERROR是用來(lái)處理錯(cuò)誤值的。它的語(yǔ)法如下: IFERROR(給定值,備選值)。 其中 給定值是需要進(jìn)行判斷的值。如果給定值是錯(cuò)誤值,那么這個(gè)公式就返回備選值。如果給定值不是錯(cuò)誤值,公式就返回給定值。 IFERROR經(jīng)常跟其他公式結(jié)合使用,將其他公式作為第一個(gè)參數(shù)。例如: 如果公式A1/B1返回錯(cuò)誤值,比如,B1=0,A1/B1返回: #DIV/0! 上述IFERROR公式將返回空字符串。 IFERROR可以處理Excel中的所有錯(cuò)誤值,這些錯(cuò)誤值包括: #N/A, #VALUE!, #REF!, #DIV/0!, #NUM! #NAME? 以及 #NULL!。 這些錯(cuò)誤有不同的含義,具體請(qǐng)參見#Div/0! Excel中的那些錯(cuò)誤值們! IFNA的工作方式跟IFERROR類似,語(yǔ)法如下: IFNA(給定值,備選值)。 如果給定值是#N/A錯(cuò)誤值,就返回備選值,否則返回給定值。 IFNA只用來(lái)處理一種錯(cuò)誤值,就是#N/A。其余的錯(cuò)誤值不做處理。 既然IFERROR可以處理所有的錯(cuò)誤值,為什么還需要IFNA函數(shù)? 實(shí)際上,大部分人經(jīng)常使用的是IFERROR函數(shù),例如: 這是使用IFERROR最常見的場(chǎng)景了,如果VLOOKUP函數(shù)匹配不到對(duì)應(yīng)的結(jié)果,就會(huì)返回#N/A,這樣,上面的公式就會(huì)返回一個(gè)空字符串""。 很少有人使用IFNA! 好像IFNA是個(gè)雞肋一樣的東西。 實(shí)際上,在上述VLOOKUP的場(chǎng)景中,我們推薦使用的是IFNA。 IFERROR的問(wèn)題 IFERROR的問(wèn)題是把所有的錯(cuò)誤值都當(dāng)作一個(gè)相同的結(jié)果(例如,空字符串"")。 問(wèn)題是VLOOKUP這個(gè)公式會(huì)遇到很多種錯(cuò)誤:
在這些錯(cuò)誤中,只有#N/A才是正常的錯(cuò)誤,因?yàn)樗碓诓檎覅^(qū)域沒有匹配到合適的結(jié)果,所以我們可以用一個(gè)我們認(rèn)為可以接受的“未匹配成功”的字符串(或者其他數(shù)值)來(lái)代替,就好像缺省值一樣。 但是當(dāng)VLOOKUP返回其余的錯(cuò)誤值時(shí),往往是不正常的,例如,返回#NAME?很可能代表公式中有某個(gè)地方寫錯(cuò)了,這類錯(cuò)誤我們需要發(fā)現(xiàn)問(wèn)題所在,然后修改這些問(wèn)題。 但是因?yàn)槟闱短琢艘粋€(gè)IFERROR,導(dǎo)致你根本不可能發(fā)現(xiàn)這些錯(cuò)誤了,也就沒有機(jī)會(huì)修正錯(cuò)誤。 因此,對(duì)于像VLOOKUP,MATCH等函數(shù),我們應(yīng)該盡可能地使用IFNA函數(shù): 這樣就可以將其他錯(cuò)誤類型暴露出來(lái),以便于我們可以修改發(fā)生這些錯(cuò)誤的原因。 自定義函數(shù) 底部菜單:知識(shí)庫(kù)->自定義函數(shù) 面授培訓(xùn) 底部菜單:培訓(xùn)學(xué)習(xí)->面授培訓(xùn) 也可以在歷史文章中學(xué)習(xí)Excel,Power Query,Power Pivot,Power BI,Power Automate各種技巧。 |
|
|