|
hello,大家好,今天跟大家詳細(xì)講解下vlookup中{0,1}它是如何進(jìn)行運(yùn)算,到底如何理解, 它的運(yùn)用方法可以分為兩類,一類適用于條件判斷,另一類是用于制造錯(cuò)誤值,下面就讓我們來詳細(xì)的講解下 1. 用于條件判斷 {0,1}用于條件判斷,我們最常見的要數(shù)使用vlookup函數(shù)進(jìn)行反向查找,舉例如下 公式:=VLOOKUP(G2,IF({1,0},C2:C10,A2:A10),2,0) Vlookup進(jìn)行數(shù)據(jù)查找,查找值必須在查找區(qū)域的第一列,如果查找值不在查找區(qū)域的第一列,我們就需要用到vlookup的反向查找,它的大致思路是,將查找值使用if函數(shù)加上{0,1}數(shù)組,構(gòu)建一個(gè)二維的表格,來進(jìn)行查找,下面就讓我們來具體分析下 公式:=VLOOKUP(G2,IF({1,0},C2:C10,A2:A10),2,0) 第一參數(shù):G2,就是表中的考核得分 第二參數(shù):IF({1,0},C2:C10,A2:A10),構(gòu)建二維表格 第三參數(shù):2,就是查找數(shù)據(jù)區(qū)域的第2列 第四參數(shù):0,精確匹配 以上參數(shù)中除了第二參數(shù)都十分容易理解,下面就是講解下它的運(yùn)算過程 首先我們先看下它的實(shí)際結(jié)果如下圖 在excel中0=false,1=true,我們把{1,0}放在if函數(shù)的第一參數(shù)中,它實(shí)際上代表對和錯(cuò)的條件結(jié)果,又因?yàn)椋瑊1,0}在大括號中,所以它是一個(gè)數(shù)組,它會跟每一個(gè)元素都發(fā)生運(yùn)算,比如在if的第二參數(shù)中它的單元格個(gè)數(shù)是9個(gè),所以,當(dāng)if的條件為1時(shí)候,他就會得到9個(gè)結(jié)果,第三個(gè)參數(shù)也是這個(gè)道理以此類推,它的運(yùn)算結(jié)果可以顯示為下圖 這樣的話,我們就構(gòu)建了一個(gè)查找值在第一列的數(shù)據(jù)區(qū)域,就非常方便我們查找了。 2.制造錯(cuò)誤值構(gòu)建數(shù)據(jù) 這種比較常見的是我們在有文字與數(shù)字混合的字符串中提取出固定長度的字符串,如提取手機(jī)號碼 公式:=VLOOKUP(0,MID(A2,ROW($1:$30),11)*{0,1},2,FALSE) 這個(gè)函數(shù)中 第一參數(shù):0 第二參數(shù):MID(A2,ROW($1:$30),11)*{0,1} 第三參數(shù):2 第四參數(shù):false 還是來著重講解下第三參數(shù),我們先看下mid函數(shù)的提取過程與結(jié)果 因?yàn)閙id的函數(shù)第二參數(shù)為,ROW($1:$30),它是一個(gè)1到30的整數(shù)序列,所以會對字符串提取30次,為什么到23次就沒有結(jié)果了呢,因?yàn)锳2單元格它的字符串個(gè)數(shù)一共就22個(gè),然后我們將這個(gè)結(jié)果乘以{0,1} {0,1}是一個(gè)數(shù)組,它會跟每個(gè)元素都進(jìn)行運(yùn)算如上圖所示它會運(yùn)算30次 當(dāng)文本乘以數(shù)字的時(shí)候,他就會得到錯(cuò)誤值,而mid函數(shù)在第7次提取到正確的手機(jī)號碼,當(dāng)它乘以{0,1}的時(shí)候會得到如圖標(biāo)紅區(qū)域的二維數(shù)組,這樣的話我我們用vlookup函數(shù)進(jìn)行提取就非常簡單了, 這僅僅是一個(gè)單元格的運(yùn)算結(jié)果,以后的都要這么算,所以電腦配置如果不是太高的話,進(jìn)行數(shù)組的運(yùn)算會十分卡 怎么樣,這么講明白呢,如果還是不太明白,建議看下這篇數(shù)組的簡單介紹 我是excel從零到一,關(guān)注我持續(xù)分享更多excel 技巧 |
|
|