點擊上方"Excel函數公式"免費訂閱
在實際的工作中,應用到下拉菜單的地方非常多,一般情況下都是為了規範數據的輸入,放置數據冗餘,且都是一級的。如果要製作二級下拉菜單,且必須是聯動的,該如何去實現呢?
目的:根據下圖,當在一級菜單中選擇相應的課程時,在二級菜單中只能選擇對應的講師。
一、必備函數:Choose+Match。
(一)Choose。
功能:根據給定的索引值,從參數中選出相應的值或操作。
語法結構:=Choose(索引值,返回值1,返回值2,返回值3,返回值4……返回值N)。
目的:返回「計算機基礎」中的第2位講師和第3行的第3位講師。
方法:
在目標單元格中輸入公式:=CHOOSE(2,C3,C4,C5,C6,C7)、=CHOOSE(3,B5,C5,D5,E5)。
解讀:
從公式中可以看出,Choose函數即可以在行中提取值,也可以在列中提取值,只需將對應的值放置在相應的參數中即可。
(二)Match。
功能:返回符合特定值特定順序的項在數組中的相對位置。
語法結構:=Match(定位值,值所在的範圍,匹配類型)。
注意事項:
參數「匹配類型」有三個值,分別為-1、0、1;分別代表「大於」、「精準」、「小於」。
目的:返回課程中「書法」的位置和「計算機基礎」講師「徐庶」的位置。
方法:
在目標單元格中輸入公式:=MATCH("書法",C2:E2,0)、=MATCH("徐庶",C3:C7,0)。
解讀:
從公式中可以看出,Match函數即可以在行中定位,也可以在列中定位。
二、二級聯動下拉菜單技巧。
思路分析:當在一級菜單中選擇相應的課程,如「計算機基礎」時,二級菜單中只能出現:甘夫人、孫尚香、袁紹、徐庶、趙雲;而不能出現其他的值。也就是首先定位課程的相對列數,然後根據相對列數的值返回對應的值。
一級菜單:
方法:
選中「課程」列中的下單元格區域,【數據】-【數據驗證】,打開【數據驗證】對話框,選擇【允許】中的【序列】,單擊【來源】右側的摺疊按鈕,選擇需要顯示的內容,並單擊展開按鈕返回【數據驗證】對話框,【確定】即可。
二級菜單:
方法:
選中「講師」列中的單元格區域,【數據】-【數據驗證】,打開【數據驗證】對話框,選擇【允許】中的【序列】,在【來源】中輸入:=CHOOSE(MATCH(B3,Match!$C$2:$E$2,0),Match!$C$3:$C$7,Match!$D$3:$D$7,Match!$E$3:$E$9)並【確定】。
解讀:
二級菜單的關鍵在於【來源】中的公式:=CHOOSE(MATCH(B3,Match!$C$2:$E$2,0),Match!$C$3:$C$7,Match!$D$3:$D$7,Match!$E$3:$E$9)。
其本質為Choose函數和Match函數的嵌套應用,首先用Match函數定位「課程」所在的相對列數,然後根據相對列數返回對應的講師。