這兩天學(xué)習(xí)excel,發(fā)現(xiàn)實現(xiàn)同一個功能,你會發(fā)現(xiàn)有不同的辦法,各自有優(yōu)點(diǎn)。
下拉菜單,這個是在資料錄入的時候,非常有用的功能,這里就只討論一級下拉菜單,估計這也是用的最多的。以office2007為例,看看你是第幾種境界?
第一種境界:我會做下拉菜單
其實做下拉菜單比較簡單,使用序列就可以了。
設(shè)置下來菜單的區(qū)別就在于數(shù)據(jù)來源,那么你可以直接在來源里直接錄入你要下拉的選項。
還有一種辦法,就是
看你的需求,選擇哪種方式。
第二種境界:使用“名稱”
上面的做法,如果自己使用,那是沒有問題的,不過感覺不是很正規(guī)。正規(guī)的做法你應(yīng)該是對下拉菜單的內(nèi)容設(shè)置“名稱”這樣看起來好懂很多。
在excel2007里設(shè)置“名稱”比較簡單,
所以你的名稱設(shè)置的清晰,那么你看起來就很清楚。
第三種境界:窗體控件
通過窗體控件有一個優(yōu)勢,就是下拉菜單的那個箭頭會一直顯示,不需要鼠標(biāo)放上去
看見沒有,那個箭頭一直顯示,不過在excel2007里,要找到控件的工具可不容易,看下圖
其實表單控件和activex控件,都有類似下拉菜單的功能,他們互相的區(qū)別,其實沒有搞明白,可以用窗體控件來實驗

這樣就可以用窗體的方式實現(xiàn)下拉菜單。好像這種方式如果選擇后,無法清空,所以我就加入一行空行,這樣就可以清空。
第四種境界:動態(tài)菜單
上面的做法,有一個缺點(diǎn),當(dāng)你增加選項,如果你是在最后一行里增加,那么你是需要調(diào)整“名稱”的范圍。
如果你增加選項,不是從最后一行添加,而是采用插入的方式添加到中間的話,那么“名稱”會自動調(diào)整。顯示你所有的選項。所以如果你是采用第二種方式的話,那么你增加選項就最好不要在最后一行添加。而是采用插入。這樣你就不需要調(diào)整“名稱”的范圍。
如果你這個下拉菜單是給別人使用,那么恐怕對方不懂如何調(diào)整“名稱”的范圍。那么我們就需要做成一個動態(tài)的菜單。

把內(nèi)容
=Sheet1!$H$2:$H$4
改為
=OFFSET(Sheet1!$H$1,1,,COUNTA(Sheet1!$H:$H)-1,)
這個時候,你就會發(fā)現(xiàn),你增加下拉菜單的選項,那邊也同時更新,不需要你維護(hù)。
上面公式的含義,我解析一下。
COUNTA 是計算一定范圍內(nèi)含有數(shù)據(jù)的個數(shù)。減去1,是因為標(biāo)題行。當(dāng)你增加下拉菜單的內(nèi)容,這個數(shù)字也是跟著變化。
OFFSET 用法比較復(fù)雜,看說明吧。