Excel表格中如何編輯邏輯值(Excel判斷錯誤值的函式)
書接上文,最後留的兩個小問題的這裡說一下答案,用isnontext函式編寫的公式為:=iferror(if(isnontext(A2),A2,A2 0),0);其實我在最後說有點牽強的意思就是,上面的兩個公式都可再簡化的,上文的公式為=iferror(if(istext(A2),A2 0,A2),0)中if函式的當istext為false的結果A2=A2 0,所以if條件函式並沒有發揮作用,可以直接去掉就變為=iferror(A2 0,0),這樣公式就最簡了,聰明的你是不是早就看出來啦。
今天我們要聊聊判斷函式的資料型別為數字即ISNUMBER函式,它的作用就是檢測引數是否是數字,如果是返回true,不是返回false,它的引數支援引用單元,常量,表示式,自定義名稱;這裡解釋一下常量表示:文字,數字,邏輯值和錯誤編碼而表示式則是包括:數學表示式,邏輯表示式(>,<,>=,<=,=,<>組成),函式,嚴格來說定義名稱也算是特殊的函式,最後說引用單元格,可以包含上述所有內容,具體詳情如下圖:
ISNUMBER函式結構圖
下面輪到說ISLOGICAL函式,它的功能就是檢測引數是不是邏輯值,如果是返回true,不是返回false,他的引數依然支援:引用單元格,常量,表示式,自定義名稱,邏輯值作為Excel三大常量資料型別唯一隻包含兩個值:TRUE和FALSE,也就說當islogical(true)=islogical(false)=TRUE,其餘情況都返回FALSE,這裡需要強調一下,邏輯值只有大寫的TRUE和FALSE,當我們輸入小寫並不會報錯,一旦回車完成公式輸入會自動轉成大寫;
ISLOGICAL函式結構
注:雖然在某些的情況下,0和false,1和true的等效,不過在ISLOGICAL函式中這確實完全不同的兩個型別的資料。
最後一個函式就是識別Excel重要的資料型別之一的錯誤編碼的函式為ISERROR,它可以識別的錯誤編碼為:#N/A,#DIV/0!,#VALUE!,#REF!,#NAME?,#NUM! ,#NULL!,#GETTING_DATA;當引數為上述的這些值的時候,返回的結果為TRUE,否則返回FALSE;這裡需要將#N/A拿出來單說一下,由於它專指使用查詢或篩選函式無法匹配的結果,嚴格說不是錯誤,而資料集合中並沒有相關的資料,所以Excel為了它單獨配備的函式ISNA函式,只有引數為#N/A時,返回為true,其他的任何情況都返回false。
ISERROR函式和ISNA函式結構圖
你是不是要說,這些玩意兒都有什麼用呢?我平時都用不上啊!確實,表面的這些的函式離的工作挺遠的,因為你還沒有成為Excel的工程師的級別的,如果你想晉升為工程師級別,這些就是你必備的知識儲備了,因為作為工程師的你,不光要把功能做出來,還需要在體驗度或功能的可維護上都要有所考慮,現在就舉個簡單的例子來讓你親身感受一下,這些知識的魅力吧。
就用ISNA函式和SUM函式來統計一下查詢無果的資料有多少?具體的操作如下,我們只是在輸入公式=sum(ISNA(引用單元格範圍) 0),然後ctrl shift Enter,是不是就統計出來的!具體還是詳解一下公式的含義,這裡要說的是ISNA(引用單元格範圍)它最終的返回結果邏輯值,至於邏輯值轉數字也可以通過數學運算子加減乘除都可以,公式中採用的加0,漸漸原理TRUE±0=1,FALSE±0=0;乘除原理:TRUE*/1 = 1,FALSE*/1=0;至於ctrl shift Enter則是對公式引用陣列計算模式,這種計算模式會在以後的章節詳細介紹。
好了今天的內容就到這裡啦,希望你能從中有所收穫,Excel出現的資料型別的判斷就湊齊了,它可以讓公式更加的自動化,也可以讓你設計的程式更有更好的互動體驗,而且有沒有體會到數學運算的缺陷卻成為它篩選文字格式中的數字和將其他型別轉化成數字的優勢,想了解可以翻看之前的文章:Excel基礎知識-四則運算(函式篇);只要用的好,缺點卻能達到意向不到的效果,還是那句話,不是它沒有用途,是我們缺少發現它用途的思路。相約下文再見,你可別缺席啊!