IFNA()
函數本方法適用於EXCEL 2011以上
https://support.office.com/zh-tw/article/ifna-%E5%87%BD%E6%95%B8-6626c961-a569-42fc-a49d-79b4951fd461
範例:
=IFNA(IF(AND(AO5=0,AP5=6,),OR(AO5=0,AO5=1,AO5=3,AO5=5),INDEX($AR$4:$BB$101,MATCH($AO5,$AQ$4:$AQ$101),MATCH($AP5,$AR$3:$BB$3,0))),0)
IF()
與ISNA()
函數IF(ISNA(express), 0, express))
範例:
=IF(ISNA(IF(AND(AO5=0,AP5=6,),OR(AO5=0,AO5=1,AO5=3,AO5=5),INDEX($AR$4:$BB$101,MATCH($AO5,$AQ$4:$AQ$101),MATCH($AP5,$AR$3:$BB$3,0)))), 0, IF(AND(AO5=0,AP5=6,),OR(AO5=0,AO5=1,AO5=3,AO5=5),INDEX($AR$4:$BB$101,MATCH($AO5,$AQ$4:$AQ$101),MATCH($AP5,$AR$3:$BB$3,0))))
ISNA()
只會檢查是否為#N/A
,如果你想要將其他的錯誤類型(例如:NUM!
、REF!
等)也轉成0
的話,可以把ISNA()
改為ISERROR()
。
如上另增IF(ISNA(express), 0, express)
的方法
謝謝可以了,但公式變很長。可以請教為什麼嗎?
因為express要重複二次,第一次在ISNA()
裡面,第二次出現在IF()
的第三個參數。
而這裡express就等於你寫的IF(AND(AO5=0,AP5=6,),OR(AO5=0,AO5=1,AO5=3,AO5=5),INDEX($AR$4:$BB$101,MATCH($AO5,$AQ$4:$AQ$101),MATCH($AP5,$AR$3:$BB$3,0)))
其實在IFERROR()
與IFNA()
等IFX()函數出現之前,也就是OFFICE 2003,這種IF()
組合ISX()
的組合技還算很常用。
=IFERROR(0,原本公式)