【Excel實用函數教學】IF、IFS函數用法及注意事項,看完就學會了

Excel內建許多用於計算的函數,其中包括靈活度、應用度很高的實用基本函數,本文介紹IF函數、IFS函數的使用方法及注意事項,可以於條件判定及多重條件判定使用,學會了有助提升工作效率!

文/藤井直弥、大山啓介 圖/悅知文化提供

根據計算結果變更顯示內容① ─ IF 函數

如何寫出巧妙的「邏輯式」是關鍵

如果想要以「年齡在 20 歲以上」、「居住地點是台北」等「條件」來切換顯示的值,可以使用 IF 函數。

IF 函數可依照邏輯式的計算,從兩種顯示結果之中選一種顯示。

 =IF( 邏輯式 ,TRUE 時的顯示內容 ,FALSE 時的顯示內容 )

IF 函數的重點在於「邏輯式」,就是使用「=」或「<」、「>」等用於比較的運算子,簡單來說,是一種提問的公式。

以「A1=10」為例,這種邏輯式是「儲存格 A1的值是否等於10」的提問。如果這項公式成立,表示儲存格 A1 的值等於 10,計算結果就為「TRUE」(正確),此時 IF 函數將會顯示第 2 個引數指定的「TRUE 時的顯示內容」;假如儲存格 A1 的值不為 10,計算結果就為「FALSE」(不正確),那麼, IF 函數將顯示第 3 個引數指定的「FALSE 時的顯示內容」。

以下是可用於指定邏輯式的比較運算子。請一併確認在何種情況下會是TRUE。

  • 可用於指定邏輯式的主要運算子以及計算結果
邏輯式運算子的意義說明
A1=10等於A1 的值為 10 時,計算結果為 TRUE
A1<>10不等於A1 的值不為 10 時,計算結果為 TRUE
A1<10小於A1 的值小於 10 時,計算結果為 TRUE
A1>10大於A1 的值大於 10 時,計算結果為 TRUE
A1<=10小於等於A1 的值小於等於 10 時,計算結果為 TRUE
A1>=10大於等於A1 的值大於等於 10 時,計算結果為 TRUE

「=」( 符 號 )或「>」、「<」(不 等號)等運算子的組合可建立各種邏輯式。當邏輯式成立,計算結果即為「TRUE」,若 不成立將為「FALSE」。

無法計算成長率時,顯示為「N.M.」

了解邏輯式的機制後,讓我們利用 IF函數計算成長率。成長年可利用「今年的利潤 ÷ 前一年的利潤 -1」的公式計算,但是當前一年的利潤為負,就無法利用這個公式計算。

因此,我們要利用「前一年的利潤是否為負值」的邏輯式切換顯示內容。當前一年的利潤為正值,就直接顯示計算結果;若為負值,就顯示「N.M.」(無法計算的英文「Not Meaning」的首字)。

  • 設定條件所得結果的範例
悅知文化《Excel最強商業實戰書【完全版】》

上圖的下側表格在「成長率」欄位的儲存格 E5 輸入了 IF 函數,再將邏輯式設定為「C5<0」,代表「C 欄(前一年)的值是否小於 0」的意思。

接著,在邏輯式成立時顯示「N.M.」,並在 FALSE 時顯示「今年的利潤 ÷ 前一年的利潤 -1」的計算結果。

在儲存格 E6 也輸入了相同的 IF 函數。可以比較「成長率」欄位兩個儲存格的計算結果,發現設定的邏輯式,真的可以依照計算結果切換顯示內容。

以巢狀結構設定多重條件

若以巢狀結構輸入 IF 函數,就能輕鬆確認是否同時滿足兩個條件。

舉例來說,想要知道滿分100分的問卷結果是否真的介於「0 ~ 100」時,必須設定「值大於等於 0」(值 > -1)以及「值小於等於 100」(值 <101)的兩個邏輯式,而像是下列方法,以巢狀結構的方式設定 IF 函數。

悅知文化《Excel最強商業實戰書【完全版】》

上述公式是將 IF 函數指定為外側的 IF 函數的第 2 個引數。這種狀態就稱為「巢狀結構的 IF 函數」。

如此設定之後,只有在第一個 IF 函數的邏輯式(值 > -1)為「TRUE」的情況下,才會處理第 2 個 IF 函數的邏輯式(值 <101)。當第 2 個邏輯式也成立,才會顯示「OK」。

其實,還可讓巢狀結構變成三層、四層,需要使用不同的條件式,公式就會變得相對複雜。

像這種「利用 IF 函數確認輸入資料的方法」可在各種情況應用,是非常通用的技巧。只要學會這項技巧,就能利用簡單的操作,只計算確認結果為 OK 的資料,也能利用「尋找」或「排序」的功能找出不 OK 的資料。

使用 Excel 2019 的人,可試著利用下一節所介紹,能快速指定多重條件的 IFS 函數。還請大家參考該節內容。

如果邏輯式過於複雜,不妨建立專用欄位

IF 函數雖然方便,若巢狀結構太多層,就會看不懂公式的內容,其他人也難以修正,因此,都該避免這樣的情況發生。

當邏輯式變得複雜,建議替每個邏輯式建立專屬欄位,以確保公式夠簡單易懂。下圖是在不同的欄位指定「得分大於等於 0」、「得分小於等於100」、「地點以台北市為開始」的三個條件式。此外,「綜合」欄位則使用 COUNTIF 函數計算三個條件式的結果為「TRUE」的儲存格有幾個。

  • 替每個條件式建立專屬的欄位
悅知文化《Excel最強商業實戰書【完全版】》

在 D、E、F 三欄分別建立邏輯式,再於 G 欄計算三個條件的結果為「TRUE」的個數。在F 欄輸入的是,當 B 欄出現「台北市」文字時,利用 COUNTIF 函數的結果為 1 的邏輯式。

在上述的情況裡,只有「綜合」欄位的值為「 3 」,才會斷定是 3 個邏輯式都成立的情況。同樣的,當值為「 2 」或「 1 」時,代表有某個邏輯式未成立。

這種將每個邏輯式分別輸入在不同欄位的方法或許有點麻煩,但比起全部整合成單一公式,這種方式絕對相較簡單,第三者也能立刻了解公式的內容。要想製作誰都看得懂,而且不會發生錯誤的資料表或表格,就必須「設計簡單易懂的公式」。


根據計算結果變更顯示內容② ─ IFS 函數

同時根據多個條件判斷

要確認兩個以上的條件是否同時滿足時,可使用下列兩種方法。

如前一節所述,巢狀結構的 IF 函數的確可以同時指定多個條件,但這種方法的缺點在於「公式會變得很複雜」。

為了解決 IF 函數這個缺點,Excel 2019 新增了「IFS 函數」。這個函數可讓我們以簡單的邏輯指定多個條件。由於函數的寫法變得簡單,後續也就更容易維護,別人也比較方便使用,所以若整個團隊都使用 Excel 2019,建議改用 IFS 函數。

IFS 函數的使用方法

IFS 函數的語法如下。

=IFS(公式① , 公式①為 TRUE 所顯示的內容 , 公式② , 公式②為  TRUE 所顯示的內容 , 於 FALSE 時顯示的內容)

以 IFS 函數指定多重條件時,會先根據左側的條件判斷,假設該條件為TRUE,就會顯示與該條件對應的內容。

接著讓我們利用 IFS 函數設定下列的條件吧。這裡的條件與前一節的 IF函數的條件完全相同。

  • 值大於等於 0、小於等於 100(-1< 值 <101)的時候,顯示「OK」
  • 值小於 0 的時候顯示「under」
  • 值大於 100 時顯示「over」

若使用 IFS 函數,可如下指定上述的條件。

悅知文化《Excel最強商業實戰書【完全版】》

此外,當 IFS 函數指定的條件都不滿足時,就會顯示「#N/A」。對於確認這張表格的人來說,無法判斷這個錯誤訊息的原因,所以使用 IFS函數時,至少要有一個條件成立。

▼這點也很重要! ▼
使用 IFS 函數的注意事項
由於這節介紹的 IFS 函數是 Excel 全新功能,相當便利,對於使用 Excel 2019、Excel 2021 與 Microsoft 365 的人來說,是絕對必用的函數。不過,也有一些事情需要注意。若在舊版的 Excel 開啟了使用最新函數的活頁簿,有時候會出現計算錯誤。如果客戶是用舊版的 Excel,而你卻寄出使用了最新函數的活頁簿,對方可能無法開啟,或是出現錯誤。因此,最好先確認活頁簿的使用者,以及團隊成員使用的 Excel 是哪個版本。

節錄自:悅知文化《Excel最強商業實戰書【完全版】:濃縮於一冊!任何人都能立即活用於職場的知識/藤井直弥、大山啓介 著 》


推薦閱讀:

相關Excel課程推薦:

課程名稱課程觀看次數
【資料整理術】Excel資料整理分析入門超過115,000次瀏覽
【函數入門】別再土法煉鋼!你一定要懂的Excel函數超過41,000次瀏覽
無痛起步-Excel VBA超入門實戰超過43,000次瀏覽
ChatGPT x Excel | 職場必學商務數據分析術超過71,000次瀏覽
更多Excel相關課程,前往104課程中心查看

追蹤【104職場力】粉絲專頁、職場更給力 ★