>

2016年8月30日 星期二

[Google Sheets] 用lookup替代多個if條件

假設if條件有3個,且都是簡單的判斷,例如:
if(B1="Anni","*A*")
if(B1="Broz","*B*")
if(B1="Tomi","*T*")
->  判斷B1是否是Anni、Broz或Tomi來輸出*A*、*B*或*T*

這時候可以用lookup來代替巢狀if
LOOKUP(search_key, search_range|search_result_array, [result_range])

原本的
if(B1="Tomi","*T*",if(B1="Broz","*B*",if(B1="Anni","*A*")))
替代後的
lookup(B1,{"Anni","Broz","Tomi"},{"*A*","*B*","*T*"})

其中注意第一個array必須要是排序的(sorted),第二個array當然也就要對應第一個array排序,沒有排序會出現error

用lookup替代後看起來清楚多了,但是lookup也是有缺點,例如要先對array排序、目標儲存格內容不在array清單上則會自動輸出array首個結果(除非另外加公式)。

如果資料量更大可考慮用vlookup或是hlookup,lookup適合這種少量簡單的資料。

沒有留言:

張貼留言