excel下拉模糊输入 (excel中有联想能力的下拉选项)

什么叫模糊、智能、联想输入的下拉菜单呢?

其实我不知道这种该叫什么,就是一种可以根据关键字自动生成下拉选项的下拉菜单吧,具体是什么效果,看看下面的动图演示就清楚了。

excel自动联想动态菜单,excel中有联想能力的下拉选项

这下知道这个下拉菜单的好处了吧。

如果你百度的话,这类教程也有很多,但是都有一点,数据源要排序,并且关键字要有一定的特点。

总之都不是太好用,没有动图演示的这个随意性大。

上面分享的这个下拉菜单完全没特殊要求,除了涉及到的公式有点难懂,操作步骤并不难。

不过咱们只是学来用的,不懂原理问题也不大,公式里关键的信息还是要跟大家说明白的,毕竟有可能要根据各自的情况做调整才能使用。

1、准备工作

要做下拉就必须有数据源,以文章开头的例子来说,就需要一份完整的产品名称列表。

单独在一个表里存放,不要有重复内容就行,没有其他要求。

excel自动联想动态菜单,excel中有联想能力的下拉选项

2、设置关键字检索信息

有了数据源,还需要一个关键字的检索信息。

是什么意思呢?就好比说,你输入"皮",那检索信息就是"皮",下拉菜单里就应该是带"皮"这个字的产品名称。

你输入"502",那下拉下拉菜单里就应该是带"502"这个信息的产品名称。

以此类推,所以这个关键字应该是你要输入数据的这一列最下面的内容。

就像刚才动画里演示的,只有这样才能保证下拉选项里就是你需要的内容。

如何得到这个关键字呢,一个公式搞定。

=LOOKUP(1,0/(出库单!A:A<>""),出库单!A:A)

excel自动联想动态菜单,excel中有联想能力的下拉选项

这个公式没啥好说的,就是LOOKUP的一个固定套路,原理也不解释了,只要清楚这里的出库单!A:A要改成你需要设置下拉菜单所在的列。

这个公式放在哪?

也没具体要求,建议是和数据源放在一个表里,这样不影响录入表格的完整性,例如我就放在sheet1的D2里,但是放好了以后就不能随便改了。

3、备选项的获取

接下来的一步就是备选项的获取,这一步是为最终下拉菜单的项目做准备,公式相当的复杂。

=INDEX($A$2:$A$194,SMALL(IF(ISERR(FIND($D$2,$A$2:$A$194)),999,ROW($A$2:$A$194)-1),ROW(A1)))

而且这个公式还是数组公式,具体怎么弄一会再说。

先把公式里的几个要点解释一下,结合下图来看吧。

excel自动联想动态菜单,excel中有联想能力的下拉选项

公式里一共有三处$A$2:$A$194,意思是原始数据源的范围,示例中是从第二行到194行的,你可以根据自己的实际数据做调整,三处一定要改成一样的才行。

$D$2就是上一步LOOKUP那个公式所在的位置,记得加锁定就ok。

还有一处数字999,这个只要比你数据源的行数大就行,如果你的数据源有一千行,那改成9999就行了。

公式里的其他地方无需修改,根据你自己的情况改好公式,然后复制到单元格里。

建议是通过编辑栏复制,或者双击单元格复制,复制以后不要回车,要同时按住Ctrl和shift键不放再回车,这就是数组公式的输入方法。

然后你会看到公式两边自动出现了大括号。

excel自动联想动态菜单,excel中有联想能力的下拉选项

接下来将公式下拉若干行即可。

若干行是多少行呢?

还是要看情况而定,比如你录入刀,就可以看到备选项里出现了内容,这时候就需要继续拉,直到出现错误值。

也就是说,公式拉多少行要取决你的关键字能有多少个对应项目,因为关键字都是随意的,所以项目多少就无法确定,只能根据情况而定,可以适当多拉几行。

excel自动联想动态菜单,excel中有联想能力的下拉选项

4、备选项的精准定位

正因为备选项的数量无法准确指定,根据关键字不同,会有不同个数的备选项,而下拉选项中只能出现准确的个数,所以还需要做一个工作,这个很简单,还是一条公式。

=1-ISERR(E2)

excel自动联想动态菜单,excel中有联想能力的下拉选项

这个公式的作用很简单,就是对备选项里用1和0来区分,1表示有效,0表示无效。

至此,准备工作全部完成。

用了将近两千字,十几幅图才是个准备工作,可见这个问题不是一般的复杂,但是涉及到的操作真的不多,主要是备选项这个公式的修改方法,掌握就OK,别的没难度的。

接下来进入最后一步。

5、智能下拉的实现

还是需要在数据验证里设置,过程参考动画演示。

excel自动联想动态菜单,excel中有联想能力的下拉选项

数据验证里选择序列,来源输入公式:

=OFFSET(Sheet1!$E$1,1,,SUM(Sheet1!$F:$F))

出错警告里的那个勾去掉,就OK了。

至于这个公式,你可以先编辑好,然后复制进去也行,或者直接输入也行,但是一定要细心,不能抄错。

完成了这一步,这个智能、联想、模糊下拉菜单就算是完成了。

但还有一点,要提高输入效率,老是在键盘和鼠标之间切换也是够麻烦的,真正的高效输入是全程键盘完成,因此还需要普及一波操作技巧。

6、操作技巧及要点

输入关键字后,回车,再按上箭头返回单元格。然后按着Alt键和下箭头打开下拉菜单,用方向键选中后回车,完成一个数据的录入。

是不是感觉很麻烦。

其实这完全是习惯的问题,试想想,但凡要使用下拉菜单输入的内容,哪个是容易的,字多的都不算问题,有那种文字+数字+符号的,各种切换,折腾半天才能输入一个,如果你有关这种经历的话,就会觉得我介绍的这个方法简直了,就一个字,爽!

关键是你要尝试这种输入流程,前几次慢一点,熟练以后掌握这种节奏,那就一路通畅了。

需要提示的是,有时候因为节奏不对,你按了Alt键可能会激活功能的快捷键显示,就是变成了这个样子。

excel自动联想动态菜单,excel中有联想能力的下拉选项

然后按Alt和↓的组合键就失灵了,这时候需要按一下ESC,然后重来。

另外一个问题就是,下拉菜单是以输入列的最后一个内容为关键字的,因此只能从上向下逐个录入。

好了,该我说的我都说完了,剩下的就需要你自己练习了。

洋洋洒洒又整了快三千字,但是我认为值,因为我真的受益了,面对那些奇葩的商品规格,产品型号,包含了特殊符号的文字信息,没有任何一种便捷的方法,当然如果你会VBA的话另说,不会的话,这个方法真的是我能想到的最好的方法了,网上没见过类似的教程。