當(dāng)然可以了,如果會(huì)用VBA,那么幾乎你看到的多數(shù)網(wǎng)站上的功能,它都能實(shí)現(xiàn),因?yàn)樗彩且环N變成語言??! 但是,今天我想給你講的方法,不用VBA編程(VBA畢竟門檻太高了),而是使用函數(shù)和數(shù)據(jù)有效性即可完成。 實(shí)現(xiàn)的效果是怎樣的呢?如圖所示,當(dāng)我們輸入關(guān)鍵字之后,菜單就能自動(dòng)變更為與關(guān)鍵字模糊匹配的選項(xiàng),所以我們把這種菜單也叫做查詢式下拉菜單或自適應(yīng)下拉菜單。 一起來學(xué)習(xí)如何通過數(shù)據(jù)有效性和公式制作這樣的下拉菜單。 Step1:數(shù)據(jù)源準(zhǔn)備如圖所示,A列數(shù)據(jù)作為下拉菜單的數(shù)據(jù)源,首先需要對(duì)A了中的數(shù)據(jù)進(jìn)行排序(升序降序均可),我們把菜單設(shè)置在E2單元格中。 Step2:設(shè)置下拉菜單在設(shè)置數(shù)據(jù)驗(yàn)證窗口中,來源填入公式: =OFFSET($A$1,MATCH($E$2&'*',$A$2:$A$15,0),,COUNTIF($A$2:$A$15,$E$2&'*'),1) Step3:對(duì)公式的解讀①使用E2輸入的數(shù)值和*組合,即$E$2&'*'來充當(dāng)Match函數(shù)的第一個(gè)參數(shù),來進(jìn)行模糊查找匹配; ②對(duì)于公式COUNTIF($A$2:$A$15,$E$2&'*'),來計(jì)算在$A$2:$A$15數(shù)據(jù)列中,出現(xiàn)E2中輸入內(nèi)容的次數(shù),這個(gè)公式返回的結(jié)果當(dāng)做Offset函數(shù)的第四個(gè)參數(shù),用來決定Offset函數(shù)偏移的行高; ③最外層的Offset函數(shù),它的語法形式是OFFSET(reference,rows,cols,height,width),翻譯一下就是OFFSET(參照單元格,偏移行數(shù),偏移列數(shù),行數(shù),列數(shù)) 所以整個(gè)公式的意思是:OFFSET($A$1,MATCH($E$2&'*',$A$2:$A$15,0),,COUNTIF($A$2:$A$15,$E$2&'*'),1) 以A1單元格為參照,向下偏移到E2單元格所在的第一個(gè)位置,然后總行數(shù)為E2單元格中的內(nèi)容所重復(fù)的個(gè)數(shù),把這個(gè)區(qū)域作為下拉菜單的數(shù)據(jù)源。 舉例:在E2單元格中輸入【廣】字,由于模糊查詢,會(huì)查找出來廣發(fā)集團(tuán)、廣匯集團(tuán)、廣汽集團(tuán),以A1單元格為參照,向下偏移3行,總行高為3,這個(gè)數(shù)據(jù)區(qū)域剛好是廣發(fā)集團(tuán)、廣匯集團(tuán)、廣汽集團(tuán)數(shù)據(jù),然后再以這三個(gè)數(shù)據(jù)作為下拉菜單的數(shù)據(jù)源,這樣是所謂的查詢式下拉菜單。 「精進(jìn)Excel」系頭條簽約作者,關(guān)注我,如果任意點(diǎn)開三篇文章,沒有你想要的知識(shí),算我耍流氓! |
|