Excel Choose用法簡單直覺,依照順序進行多條件判斷。本文以會科代碼表為範例,介紹Vlookup和Choose函數如何快速串連兩張報表,方便參考和查閱,資料運用更有效率。
目錄
Toggle一、會計科目代碼表
這篇文章的Excel表格範例是會科代碼表,它最基本的形式是只有兩個欄位:「會科代碼」和「會計科目」。

二、財務報表分類
會計科目是輸入傳票時必定要有的資訊,所謂的財務報表就是根據傳票的會計科目,依照一定規則進行匯總而成,所以會有這裡看到的財報類別對照表。仔細看的話,這裡代碼便是會科代碼的首碼,「1」開頭是資產,「2」開頭是負債,接下來的代碼和財報類別都是相同規則依此類推。

三、LEFT字串擷取
有了會科代碼表和財報分類表,瞭解到了這兩個表之間有一定的規則串聯,為了方便起見,希望在會科代碼表直接可以看到相對應的財報類別,其中的關鍵就在於首碼這個規則。
在會科代碼表科插入一個新的欄位,使用Excel文字函數LEFT就可以得到這個關鍵的會科首碼:「=LEFT(A523,1)」。

四、VLOOKUP用法
現在一張表有會科首碼,另外一張表有類別代碼,這兩個欄位指的是同一件事情,第一個想到的是熟悉的Excel VLOOKUP公式:「=VLOOKUP(B2,’2′!A:B,2,0)」,理論上這樣能把相對應的財報類別帶出來,可是好不容易設計好了公式,結果卻並不是那麼一回事,乍看之下是難以理解的訊息:「#N/A」,其英文意思為Not Available,中文就是截圖所看到的:「公式或函數無法使用某值」。

五、文字轉數字公式
上個步驟之所以出現問題,是因為Excel資料類型不同造成的。例如007它可以是文字,也可以是數值。當它是文字的時候,代表是一個人的名字,而當它是數值的時候,相當於7這個數字。用文字007去查找數字007,兩者不同類,就會發生上個步驟所看到的狀況。
解決辦法很簡單,既然是文字和數值類型不同,那就用一個專門的Value函數將文字轉換成數值。007是一個人,套上這個函數他就變成一個數字,也就是這裡看到的公式:「=VLOOKUP(VALUE(B2),’2′!A:B,2,0)」。
這裡順便補充,如果是反過來Excel數字轉文字的話,可以使用TEXT函數。

六、Excel Choose用法
上個步驟使用VLOOKUP搭配VALUE的Excel函數組合,雖然足以達到目的,但畢竟是兩個表之間的串連,也許會想說能否直接在原來的表格中得到財報類別。
辦法是有的,使用CHOOSE公式:「=CHOOSE(B2,”資產”,”負債”,”權益”,”收入”,”成本”,”費用”,”業外”,”綜合損益”,”其他”)」。它的第1個參數要求是一個自然數,1234567之類的,接下來的參數是依照順序的傳回值。
例如有三種情況,那麼就會有4個參數,其中第1個參數是123的其中之一,後面第二三四參數分別代表了三種情況,因此第1個參數是2,它就會傳回第3個參數,也就是第二種情況的計算內容。
配合文章範例,1的話是資產,2的話是負債,依此類推,剛好依照會科首碼得到相對應的財報類別。
必須說,CHOOSE函數簡單直覺,可是有相當的侷限性,表格要剛好跟這篇文章範例的結構相同,必須是1234這樣自然數分類方式才能適用,否則的話還是回去參考第四步驟更為廣泛的VLOOKUP。

七、樞紐分析表檢查
但凡進行了像這篇文章這樣子的資料處理,設計了看起來複雜的函數公式,為了避免出錯以防萬一,最好做個簡單的檢查驗證。
例如在這裡就用到了樞紐分析表,將整個報表進行匯總,會科首碼和財報類別添加到欄標籤裡面排排站,如此一眼望去,很容易可以看得出來是沒有問題的。

文章範例的延伸應用
這篇Excel教學文章所使用的範例是會科代碼表,其實不管是人員部門、產品分類、銷售考績都是相同的分類機制,都可以套用這篇文章的VLOOKUP函數公式,而且例如獎金等級也許就正好分成123,可以直接使用更專業的CHOOSE函數,在此推薦給有需要的讀者。
一次學會所有必須技能的Excel進階課程: