上一篇我們講到了如何在Excel中創(chuàng)建基礎(chǔ)的下拉菜單立美,然而在很多業(yè)務(wù)場(chǎng)景里翻擒,需要首先選擇一級(jí)菜單,再根據(jù)一級(jí)菜單的選擇內(nèi)容決定二級(jí)菜單有哪些選項(xiàng)渊抽,看到這里,你想到了哪些應(yīng)用場(chǎng)景呢议忽?沒錯(cuò)懒闷,最常見的就是【省份+城市】的二級(jí)下拉菜單組合。今天的示例代碼就以此構(gòu)建。
最終的效果如圖所示:
第一步愤估、設(shè)置二級(jí)選項(xiàng)數(shù)據(jù)
1.1 創(chuàng)建一個(gè)sheet表帮辟,專門存放菜單選項(xiàng):
1.2 在標(biāo)簽列表中,輸入一級(jí)玩焰、二級(jí)菜單由驹,使它們?cè)谕恍谢蛲涣校?/p>
第二步、依次設(shè)置變量名
2.1 一級(jí)菜單的變量名設(shè)置和上篇講的一樣昔园,選中蔓榄、左上角輸入框設(shè)置,忘記的話可以返回上一篇查看:
2.2 二級(jí)菜單的變量名設(shè)置方式有些許不同默刚,選中同一行(包含一級(jí)甥郑、二級(jí)),點(diǎn)選上方的【公式】選項(xiàng)卡羡棵,點(diǎn)擊【根據(jù)所選內(nèi)容創(chuàng)建】:
2.3 在彈出的窗口里壹若,選擇最左列。這個(gè)的含義就是將最左列的一級(jí)菜單的名稱和后面的二級(jí)菜單的所有選項(xiàng)進(jìn)行了關(guān)聯(lián)皂冰,使用這種方式,防止出現(xiàn)一級(jí)菜單選項(xiàng)太多而打錯(cuò)字的情況养篓。
第三步秃流、在主表中進(jìn)行菜單設(shè)置
3.1 返回主表,找到省市那一列的單元格柳弄,開始設(shè)置一級(jí)菜單舶胀,這還是上節(jié)課的內(nèi)容:
彈窗選擇【允許:序列】【來源:=一級(jí)菜單變量名】
一級(jí)菜單設(shè)置成功:
3.2 找到城市那一列的單元格,開始設(shè)置二級(jí)菜單碧注。
彈窗的選項(xiàng)這么設(shè)置:
這里注意嚣伐,來源要寫
=INDIRECT(INDIRECT("$一級(jí)菜單所在列的字母序號(hào)"&ROW()))
解釋一下:
這是一個(gè)嵌套結(jié)構(gòu),里面涉及到了INDIRECT函數(shù)萍丐,意思就是獲取某個(gè)單元格的引用值轩端。那么我們先看里面的那一層INDIRECT函數(shù):
INDIRECT("$一級(jí)菜單所在列的字母序號(hào)"&ROW())
獲取“一級(jí)菜單那一列、當(dāng)前單元格所在行”的那個(gè)單元格的引用值逝变,也就是當(dāng)前二級(jí)菜單的一級(jí)菜單嘛基茵!~
好,現(xiàn)在拿到了那個(gè)值壳影,假設(shè)說是“廣東省”拱层,那么外層函數(shù)就是INDIRECT("廣東省"),這是什么意思呢宴咧?請(qǐng)注意INDIRECT函數(shù)括號(hào)里的值永遠(yuǎn)都表示單元格根灯,因?yàn)檫@個(gè)函數(shù)的用法就是獲取某單元格的引用值,因此,此時(shí)的“廣東省”并不是三個(gè)文本字符烙肺,而是代表你剛才在第二步里設(shè)置的那一組叫“廣東省”的二級(jí)菜單選項(xiàng)的單元格組芥驳,所以順推引用值,就是廣東省的所有二級(jí)菜單選項(xiàng)茬高。
好的兆旬,推導(dǎo)到這里你應(yīng)該已經(jīng)懂了,是不是有種醍醐灌頂?shù)内s腳怎栽?我們看一下設(shè)置好的二級(jí)菜單:
它會(huì)根據(jù)左邊一級(jí)菜單的內(nèi)容而改變選項(xiàng):
思考題:如何設(shè)置三級(jí)菜單丽猬、四級(jí)菜單……N級(jí)菜單?
這里留一個(gè)思考題熏瞄,你可以在下方留言評(píng)論脚祟,沒有任何獎(jiǎng)勵(lì),只是幫助你更深刻的理解Excel的名稱管理器强饮、數(shù)據(jù)驗(yàn)證由桌,熟練掌握而已~
另外,想要設(shè)置一整列選項(xiàng)邮丰、隱藏sheet數(shù)據(jù)表行您,這些進(jìn)階技巧在上一課也都講了,本篇就不再贅述剪廉。
這節(jié)課的示例文檔也同步到網(wǎng)盤了娃循,歡迎點(diǎn)贊收藏評(píng)論,私聊給我哦~