cao死我好湿好紧好爽动态视屏|精选久久久久久久久久|中文无码精品一区二区三区四季|AAA国语精品刺激对白视频|

當(dāng)前位置:首頁 > 軟件開放 > 正文內(nèi)容

展開收縮下拉菜單代碼(設(shè)置下拉框向下展開)

軟件開放6個月前 (07-09)426

編按:

一說起下拉菜單,我相信大多數(shù)有點Excel基礎(chǔ)的都會做。但今天我們來點不一樣的下拉菜單,從青銅級別到王者級別,應(yīng)有盡有,趕緊來看一看吧!

下面,我們將按照從簡單到高級來給大家介紹如下幾種下拉菜單。

1、最簡單的下拉菜單

2、名稱制作下拉菜單

3、動態(tài)下拉菜單(沒有空白選項的)

4、多內(nèi)容下拉菜單,填充時拆分內(nèi)容

5、智能錄入下拉菜單,填充時拆分內(nèi)容

注意:今天主要說的內(nèi)容是“數(shù)據(jù)驗證(Validation)”的內(nèi)容,不涉及控件使用,各個Excel版本都可以使用。

【正文】

1、青銅(最簡單的下拉菜單)

制作方法:

在工具欄中,點擊“數(shù)據(jù)驗證”功能;

展開全文

在彈出的窗口中,按下圖:

在【允許】中選擇“序列”,在【來源】中輸入“男,女”,按確定鍵完成操作。

注意:無論選填的內(nèi)容是什么,都要用“英文的逗號間隔”,而且不需使用雙引號。

2、白銀

方法1:在數(shù)據(jù)驗證窗口中,如下設(shè)置

【來源】處可以直接選擇單元格區(qū)域,即可把這部分的內(nèi)容作為下拉菜單的內(nèi)容。

方法2:我們也可以使用名稱管理器來操作:

選擇A2:A17單元格,然后在【名稱框】中編輯一個名稱:例如我們輸入“科學(xué)家”,然后【按回車結(jié)束編輯】

然后在數(shù)據(jù)驗證窗口中如下圖設(shè)置;

3、黃金——動態(tài)下拉菜單

如果我們的選擇項數(shù)量不確定,隨著添加或者刪除,下拉選項也要隨之增加減少,如下圖所示:

按CTRL+F3組合鍵,打開【名稱管理器】窗口,新建一個名稱“選項”,按下圖設(shè)置名稱內(nèi)容:

引用位置的函數(shù):=OFFSET(黃金!$A$2,,,COUNTA(黃金!$A$2:$A$997),)

使用COUNTA函數(shù)確定區(qū)域中的內(nèi)容數(shù)量,然后在使用數(shù)據(jù)驗證創(chuàng)建下拉菜單即可。

如果A列數(shù)據(jù)是使用函數(shù)后得到的,例如把某列數(shù)據(jù)去重,如下圖:

A2單元格的函數(shù)為:

{=IFERROR(INDEX($A$2:$A$38,SMALL(IF(MATCH($A$2:$A$38,$A$2:$A$38,0)=ROW($1:$37),ROW($1:$37),9^9),ROW(B1))),"")}

這個函數(shù)是萬金油,之前的教程中有解釋的,就不在這里贅述了。然后下拉A2單元格填充至A18,就得到了去重后的內(nèi)容,然后再使用名稱即可引用到數(shù)據(jù)驗證中。

但是要注意:表中從B8:B18都是IFERROR函數(shù)容錯后的空格,那么剛才用COUNTA函數(shù)引出選項個數(shù)的方式就不正確了,我們換一個寫法即可,如下:

函數(shù)如下:

=OFFSET(黃金!$B$2,,,COUNTA(黃金!$B$2:$B$18)-COUNTBLANK(黃金!$B$2:$B$18),)

用COUNTA-COUNTBLANK的方式確定應(yīng)該取多少個選項內(nèi)容。

截止到此,【下拉選填菜單】的操作方法,配合【函數(shù)】和【自定義名稱】還可以適應(yīng)工作,但是已經(jīng)顯得力不從心,因為隨著數(shù)據(jù)的變化,對于函數(shù)和自定義名稱的調(diào)整是在所難免的。那么【更高級別的下拉選填菜單】我們繼續(xù)看。

4、鉆石級別——多內(nèi)容下拉菜單,填充時拆分內(nèi)容

下拉菜單選擇項包含多個不同屬性的內(nèi)容,選填后自動填入多個單元格。這個方式是使用VBA操作的,代碼如下:

Private Sub Worksheet_Change(ByVal Target As Range) '''單元格值改變,觸發(fā)事件

If Target.Column = 4 And Target.Count = 1 Then '''判斷是否在D列,選擇一個單元格

With Target '''使用這個單元格

s = .Text '''單元格的值賦值給一個變量s

.Resize(1, 2) = Split(s, ":") '''單元格擴展1行2列,然后把用Split函數(shù)按冒號拆分的數(shù)組賦值到單元格區(qū)域

End With '''with結(jié)束語句

End If '''結(jié)束判斷

End Sub '''工程結(jié)束

Private Sub Worksheet_SelectionChange(ByVal Target As Range) '''選擇單元格改變,觸發(fā)事件

If Target.Column = 4 And Target.Count = 1 Then '''判斷是否在D列,選擇一個單元格

With Sheets("鉆石")

s = Join(Application.Transpose(.Range("A2:A" .[A65000].End(3).Row)), ",") '''將A列從A2開始,有值的單元格Join成一個字符串,用英文逗號間隔

End With

With Selection.Validation '對所選擇的單元格,創(chuàng)建數(shù)據(jù)有效性

.Delete

.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _

xlBetween, Formula1:=s

.IgnoreBlank = True '設(shè)置單元格 允許空值

.InCellDropdown = True '提供下拉列標(biāo)

End With

End If '結(jié)束判斷

End Sub '''工程結(jié)束

按下圖粘貼或者編寫代碼亦可。

5、王者——智能錄入下拉菜單,填充時拆分內(nèi)容

同學(xué)們做過多級聯(lián)動的下拉菜單嗎?你是如何做的呢,按首行批量創(chuàng)建自定義名稱,然后再INDIRECT?

這種方法對于簡單的數(shù)據(jù)源還是可以采用的,但是對于比較多的內(nèi)容就不是很方便,例如我們今天的這份數(shù)據(jù)源——“全國【省、市、縣 三層】的智能下拉填充功能”

如果同學(xué)們用傳統(tǒng)方式做的話,自定義名稱要做多少呢?

下面看看作者E圖表述制作后的效果吧:

這也是用VBA做的,VBA可以做很多日常不敢想想的內(nèi)容,也只有VBA才能做出高級的功能。不說廢話,代碼如下:

Private Sub Worksheet_Change(ByVal Target As Range)

If Target.Column = 7 And Target.Row = 2 Then '''如果被改變值的單元格7行2列【G2】單元格時

With Sheets("王者") '''使用《王者》工作表

arr = .Range("A2:C" .[A100000].End(3).Row) '''將從A2單元格開始到A列已使用的末行結(jié)束的單元格區(qū)域賦值數(shù)值arr

s = Target.Text '''將被操作單元格的值賦值給變量s

If s "" Then '''如果s不為空值

展開收縮下拉菜單代碼(設(shè)置下拉框向下展開)

For i = 1 To UBound(arr) '''循環(huán)數(shù)組arr

st = arr(i, 1) "|" arr(i, 2) "|" arr(i, 3) '''將省市縣內(nèi)容合并,并且用|間隔

If st Like "*" s "*" Then '''如果st字符串包含s變量的內(nèi)容

svd = svd st "," '''將st賦值給svd變量,并用英文逗號間隔,作為下拉菜單的內(nèi)容

End If

Next i

End If

With .Range("G3").Validation '對G3單元格創(chuàng)建數(shù)據(jù)有效性

.Delete

.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _

xlBetween, Formula1:=svd

.IgnoreBlank = True '設(shè)置單元格 允許空值

.InCellDropdown = True '提供下拉列標(biāo)

End With

.[G3] = "" '''G3單元格初始值為空

End With

End If

If Target.Column = 7 And Target.Row = 3 And Target.Text "" Then '''如果G3單元格的值被改變,且值不為空時

With Sheets("王者")

a = .[H100000].End(3).Row + 1 '''確定H列中為空的第一行

.Cells(a, 8) = Split(Target.Text, "|")(0) '''Split方法拆分下拉菜單的內(nèi)容,將第1個值放入第8列的末行空白行

.Cells(a, 9) = Split(Target.Text, "|")(1) '''同上,放入第2個值

.Cells(a, 10) = Split(Target.Text, "|")(2) '''同上,放入第3個值

'''注意:Split方法拆分后,是一個一維數(shù)組。vba中的內(nèi)存數(shù)組序號默認是從0開始計數(shù)的

.[G3] = "" '''G3單元格再歸零

End With

End If

End Sub

不需自定義名稱,不需多級聯(lián)動的大量數(shù)據(jù)驗證,這將極大的節(jié)省EXCEL的內(nèi)存,大大提高了運行的效率,同時一級選擇、多級錄入的方式也節(jié)省了操作的環(huán)節(jié)。

寫在最后:王者只是人間的強者,而這世間還有更高的存在。人外人、天外天,EXCEL之外有EXCEL,除開上面這種“下拉菜單”,我們還有更高級別的,大家想不想看呢?

做Excel高手,快速提升工作效率,部落窩教育《一周Excel直通車》視頻和《Excel極速貫通班》直播課全心為你!

學(xué)習(xí)交流請加微信:hclhclsc進微信學(xué)習(xí)群。

相關(guān)推薦:

如何制作智能的下拉菜單?輸入數(shù)據(jù)模糊匹配對應(yīng)的下拉選項

最簡單的多級下拉菜單制作方法,不需要定義名稱

別怕,VBA入門級教程來了,條件語句很簡單!

八大查找函數(shù)公式,輕松搞定數(shù)據(jù)中的多條件查找

版權(quán)申明:

本文作者E圖表述;同時部落窩教育享有專有使用權(quán)。若需轉(zhuǎn)載請聯(lián)系部落窩教育。

掃描二維碼推送至手機訪問。

版權(quán)聲明:本文由飛速云SEO網(wǎng)絡(luò)優(yōu)化推廣發(fā)布,如需轉(zhuǎn)載請注明出處。

本文鏈接:http://www.smallwaterjetsystem.com/post/118102.html

“展開收縮下拉菜單代碼(設(shè)置下拉框向下展開)” 的相關(guān)文章

西安軟件開發(fā)培訓(xùn)(西安軟件開發(fā)培訓(xùn)機構(gòu)排行榜)

西安軟件開發(fā)培訓(xùn)(西安軟件開發(fā)培訓(xùn)機構(gòu)排行榜)

本篇文章給大家談?wù)勎靼曹浖_發(fā)培訓(xùn),以及西安軟件開發(fā)培訓(xùn)機構(gòu)排行榜對應(yīng)的知識點,希望對各位有所幫助,不要忘了收藏本站喔。 本文目錄一覽: 1、西安的計算機培訓(xùn)學(xué)校有哪些? 2、西安軟件編程培訓(xùn)學(xué)校排名榜有哪些? 3、西安軟件開發(fā)培訓(xùn)學(xué)校有哪些? 4、西安最好的計算機培訓(xùn)機構(gòu)是哪個? 西...

蘋果怎么允許軟件訪問位置(蘋果怎么允許軟件訪問位置呢)

蘋果怎么允許軟件訪問位置(蘋果怎么允許軟件訪問位置呢)

今天給各位分享蘋果怎么允許軟件訪問位置的知識,其中也會對蘋果怎么允許軟件訪問位置呢進行解釋,如果能碰巧解決你現(xiàn)在面臨的問題,別忘了關(guān)注本站,現(xiàn)在開始吧!本文目錄一覽: 1、蘋果手機如何讓原本不訪問位置信息的軟件訪問位置信息? 2、iphone 如何設(shè)置軟件訪問網(wǎng)絡(luò)權(quán)限呢 3、蘋果如何設(shè)置訪問...

怎么創(chuàng)建網(wǎng)站(怎么建網(wǎng)站)

怎么創(chuàng)建網(wǎng)站(怎么建網(wǎng)站)

本篇文章給大家談?wù)勗趺磩?chuàng)建網(wǎng)站,以及怎么建網(wǎng)站對應(yīng)的知識點,希望對各位有所幫助,不要忘了收藏本站喔。 本文目錄一覽: 1、如何創(chuàng)建自己的網(wǎng)站平臺 2、怎樣自己創(chuàng)建一個網(wǎng)站? 3、怎么創(chuàng)建網(wǎng)站 4、怎么建網(wǎng)站呀! 5、怎么創(chuàng)建一個自己的網(wǎng)站 如何創(chuàng)建自己的網(wǎng)站平臺 創(chuàng)建自己的網(wǎng)站平臺...

安利邀請碼怎么獲?。ò怖瀑徰埓a怎么領(lǐng)取)

安利邀請碼怎么獲?。ò怖瀑徰埓a怎么領(lǐng)取)

今天給各位分享安利邀請碼怎么獲取的知識,其中也會對安利云購邀請碼怎么領(lǐng)取進行解釋,如果能碰巧解決你現(xiàn)在面臨的問題,別忘了關(guān)注本站,現(xiàn)在開始吧!本文目錄一覽: 1、安利售后專員邀請碼怎么填 2、邀請碼如何獲取?????? 3、如何獲得論壇邀請碼 4、如何獲取邀請碼。 5、邀請碼是怎么弄的...

手機瀏覽器顯示不全網(wǎng)頁內(nèi)容(手機瀏覽器不能顯示全部網(wǎng)頁內(nèi)容)

手機瀏覽器顯示不全網(wǎng)頁內(nèi)容(手機瀏覽器不能顯示全部網(wǎng)頁內(nèi)容)

本篇文章給大家談?wù)勈謾C瀏覽器顯示不全網(wǎng)頁內(nèi)容,以及手機瀏覽器不能顯示全部網(wǎng)頁內(nèi)容對應(yīng)的知識點,希望對各位有所幫助,不要忘了收藏本站喔。 本文目錄一覽: 1、手機網(wǎng)頁顯示不完整怎么辦? 2、手機瀏覽電腦版網(wǎng)頁顯示不全 手機瀏覽電腦版網(wǎng)頁顯示不全怎么辦 3、存龍網(wǎng)站手機打開不全 4、手機網(wǎng)頁...

如何提取軟件里的網(wǎng)址(怎么提取圖片里的網(wǎng)址)

如何提取軟件里的網(wǎng)址(怎么提取圖片里的網(wǎng)址)

今天給各位分享如何提取軟件里的網(wǎng)址的知識,其中也會對怎么提取圖片里的網(wǎng)址進行解釋,如果能碰巧解決你現(xiàn)在面臨的問題,別忘了關(guān)注本站,現(xiàn)在開始吧!本文目錄一覽: 1、如何獲取app中的網(wǎng)站? 2、怎樣把APP里的網(wǎng)頁地址提取到電腦上 3、百度app如何提取網(wǎng)址 4、如何獲取app內(nèi)視頻地址...