今天跟大家分享下,我們如何制作一個“聯想式的下拉菜單”,也有人将其稱之為“智能下拉菜單”
它可以根據我們在單元格輸入的内容,自動地匹配下拉選項,如果你的下拉選項非常的多,強烈建議你試着制作下,它可以幫你在衆多選項中快速找到自己需要内容,提高工作效率,廢話不多說,讓我們直接開始吧。
一、3個函數1個符号
這個公式的構建還是比較複雜的,我們需要用到3個函數以及1個通配符,下面我們就來簡單地了解下它們
1.match函數:查找數據的位置
語法:=MATCH(查找值,查找區域,匹配類型)
2.countif函數:條件計數
語法=COUNTIF(統計的區域,計數條件)
3.OFFSET函數:偏移函數,函數會一個單元格為原點進行偏移,然後得到一個新的偏移區域
語法:OFFSET(偏移基點,偏移行數,偏移列數,新區域的高度,新區域的寬度)
4.通配符:*号
*号表示:任意多個字符,簡單來說它可以代指Excel中的所有字符,可以一個都沒有,也可以有無窮多個。我們經常使用連接符号将其與關鍵字連接在一起,用作數據匹配,在這裡也是一樣的用法
以上就是我們需要使用的所有函數,最關鍵的是OFFSET,主要是通過使用OFFSET函數來定義一個動态的區域,達到聯想式下拉的效果,下面我們就來制作下吧
想要從零學習Excel,可以點擊上方
二、制作聯想式下拉首先我們必須要将制作下拉菜單的數據放在一列中,并且排一下序,将一樣的型号都放在一起,這一點非常重要。
随後點擊一個空白單元格,然後點擊【數據】找到【數據驗證】選擇為【序列】在來源中我們将公式設置為:=OFFSET($A$1,MATCH(D2&"*",$A:$A,0)-1,,COUNTIF($A:$A,D2&"*"))
随後點擊【出錯警告】找到【輸入無效數據時顯示出錯警告】将它前面的對勾去掉,然後點擊确定,至此就制作完畢了
三、原理講解
=OFFSET($A$1,MATCH(D2&"*",$A:$A,0)-1,,COUNTIF($A:$A,D2&"*"))
第一參數:基點,$A$1,這個是偏移的原點,也就是這一列數據表頭【手機型号】
第二參數:偏移行數,MATCH(D2&"*",$A:$A,0)-1,D2就是我們設置下拉菜單的單元格,如果我們在D2中輸入小米,match函數就會在A列中查找第一個小米型号出現的位置,減1是為了減去表頭,在這裡他的結果是 5
第三參數:偏移列數,省略,因為僅僅隻有一列數據,所以将其省略掉
第四參數:新區域的高度,COUNTIF($A:$A,D2&"*"),這個函數的作用是計算小米一共有多少個型号,在這裡他的結果是5
第五參數:新區域的寬度,因為僅僅隻有一列數據,所以寬度可以省略掉
這個就是函數的計算過程,下圖灰色區域就是offset函數得到的結果區域,正好是小米星号對應的區域
說實話這個公式還是比較難理解的,大家如果實在看不懂,直接套用這個公式即可,隻需更改2處
1.第一參數中的$A$1,更改為你表格中對應的表頭位置
2.第二與第四參數中的D2,更改為你設置下拉的單元格位置即可
更改完畢後,直接使用即可,以上就是今天分享的全部内容,怎麼樣?你學會了嗎?
我是Excel從零到一,關注我,持續分享更多Excel技巧
,更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!