有同學(xué)提出來(lái)這樣一個(gè)數(shù)據(jù)填充問(wèn)題。要求將A列名稱(chēng)按照B列個(gè)數(shù)實(shí)現(xiàn)F列效果的填充。如下圖所示:
這樣的一種數(shù)據(jù)重復(fù)填充可以用Vlookup函數(shù)的模糊查找功能來(lái)實(shí)現(xiàn),我們一起來(lái)了解一下,你會(huì)發(fā)現(xiàn)原來(lái)函數(shù)還可以這樣用。
【正文】
一 計(jì)算累計(jì)個(gè)數(shù)和在C列添加輔助列“累計(jì)個(gè)數(shù)”,在C2單元格中輸入公式:=SUM($B$2:B2)。計(jì)算結(jié)果如下:
通過(guò)累計(jì)計(jì)算可以得知:最終重復(fù)填充后應(yīng)該總共有13行數(shù)據(jù)。
二 填充序號(hào)從第一步中我們已經(jīng)得知總共需要填充13行數(shù)據(jù),那么在E列增加“序號(hào)”字段,并填充1-13的序列。填充序列方法有很多:
平時(shí)我們得到1-13的序列可能是采取光標(biāo)放置1單元格右下角往下拖的方式進(jìn)行填充,若序列較短,可以用這種方式。但在工作中如果遇到比較多的數(shù)據(jù),比如幾十、幾百、甚至幾千,那用這種方法就太耗時(shí)耗力了。所以我們用序列的方式進(jìn)行填充。
在E2單元格輸入數(shù)字1,光標(biāo)選中E2單元格,找到【開(kāi)始】選項(xiàng)卡——“填充”——“系列”命令。在“序列”對(duì)話框中設(shè)置以下內(nèi)容,即可快速得到序列。
1、 位置的修改:序列產(chǎn)生在“列”。
2、 序列類(lèi)型:等差序列。
3、 步長(zhǎng)值:1
4、 終點(diǎn)值:輸入序列終止值,本例為13。
三 思路分析填充好序列后,我們可以分析得到以下列表:以北京為例:序號(hào)為2,3,4(序號(hào)范圍為:2<=序號(hào)<5)時(shí),應(yīng)填充為北京。范圍臨界點(diǎn)是前閉后開(kāi)。而Vlookup的模糊查詢可以實(shí)現(xiàn)范圍查找,并且是前閉后開(kāi)的條件。
四 創(chuàng)建數(shù)據(jù)源手動(dòng)創(chuàng)建數(shù)據(jù)源,在K2單元格中輸入0,K3單元格輸入公式:=C2+1,C2為累計(jì)個(gè)數(shù)。公式往下復(fù)制,得到如下數(shù)據(jù)源:
五 Vlookup模糊查找實(shí)現(xiàn)數(shù)據(jù)填充。創(chuàng)建好數(shù)據(jù)源后,就可以利用Vlookup函數(shù)模糊查找實(shí)現(xiàn)數(shù)據(jù)填充了,在G2單元格中輸入公式:=VLOOKUP(E2,$K$1:$L$8,2,1)。如下圖所示:
公式分析:
第一個(gè)參數(shù):E2,查找對(duì)象,即通過(guò)E2單元格中的序號(hào)查找對(duì)應(yīng)的名稱(chēng),所以E2為查找依據(jù);
第二個(gè)參數(shù):$K$1:$L$8,數(shù)據(jù)源,由于公式往下復(fù)制,數(shù)據(jù)源不發(fā)生變化,因此使用絕對(duì)引用;
第三個(gè)參數(shù):2,匹配序列,即要查找的“名稱(chēng)”位于數(shù)據(jù)源中的第2列。
第四個(gè)參數(shù):1,查詢類(lèi)型為模糊查找。若為0,則為精確查找。
模糊查找與精確查找的區(qū)別:以以下數(shù)據(jù)源為例。
精確查找:參數(shù)為0,則在以上數(shù)據(jù)源中,可以查詢到的結(jié)果只有3個(gè):序號(hào)0對(duì)應(yīng)為上海,序號(hào)2對(duì)應(yīng)為北京,序號(hào)5對(duì)應(yīng)為天津。若查找序號(hào)4,則查詢不到結(jié)果。
模糊查找:參數(shù)為1,則在以上數(shù)據(jù)源中,查詢結(jié)果為:若0<=序號(hào)<2(序號(hào)為0,1),均可匹配到名稱(chēng)上海;若2<=序號(hào)<5(序號(hào)為2,3,4),均可匹配到名稱(chēng)北京;若序號(hào)>=5(序號(hào)為5,6,7…)均可匹配到名稱(chēng)天津。
注意點(diǎn):模糊查詢要求數(shù)據(jù)源第一列中的值必須以升序排序。