下拉菜单有重复值限制(下拉菜单选项太多)

Hello,大家好,大家工作中有没有遇过这样的情况,下拉菜单非常的项目很多多,想手动输入还被提示输入错误,这个时候我们只能一个一个的点选非常的麻烦,效率很低,今天就跟大家分享下如何制作智能式下拉菜单,可以根据我们输入的数据给出下拉的列表,能够快速提高工作效率,如下图,当我们在智能下拉中输入小米,下拉中仅仅会出现小米的选项,而普通下拉无法输入内容,只能在下拉中选择

下拉菜单有重复值限制(下拉菜单选项太多)(1)

一、3个函数

制作智能下拉菜单我们是使用函数完成的,在这里我们需要用到3个函数:offset、match以及countif函数,对于match以及countif函数都是我们常用的函数,在这里就不多丛介绍了,我们来了解下这offset函数的作用以及参数

Offset函数:offset是一个偏移函数,它以一个基点为原点进行偏移得到一个新的偏移区域

第一参数:参照区域,以选择的区域作为偏移基点 第二参数:行数,将基点区域在行方向移动多少行单元格 第三参数:列数,将以行方向移动过的区域,再以列方向移动多少个单元格 第四参数:高度,将第一第二参数移动过后的新区域取多少列 第五参数:宽度,将第一第二参数移动过后的新区域取多少行

第2到第5参数如果不填写则需省略

offset函数会根据一个单元格的位置,移动得到另一个新的数据区域,它返回的结果是一个区域,并不是一个单元格,所以常与函数进行嵌套使用,这个函数经常用于制作动态图表

下拉菜单有重复值限制(下拉菜单选项太多)(2)

二、制作智能下拉

首先我们需要对数据进行排序,这一点非常重要,如果不排序是不能达到这样的效果的,然后我们点击想要制作智能下拉的单元格,点击数据找到数据验证,在允许中找到序列,然后输入函数:

=OFFSET($A$1,MATCH(C2&"*",$A:$A,0)-1,,COUNTIF($A:$A,C2&"*"))

紧接着我们点击出错警告,将输入无效数据时显示出错警告前面的对勾去掉,点击确定,这样的话智能下拉就完成了

下拉菜单有重复值限制(下拉菜单选项太多)(3)

下面跟大家简单的介绍先函数

=OFFSET($A$1,MATCH(C2&"*",$A:$A,0)-1,,COUNTIF($A:$A,C2&"*"))

第一参数:基点,$A$1,基点单元格,也就是我们表头的位置,需绝对引用

第二参数:移动的行数 ,MATCH(C2&"*",$A:$A,0)-1,在这里match函数的作用是查找在下拉中输入的数据在A列的位置,第一参数:C2&"*",在这里星号是通配符代表任意多个字符,比如我们在单元格中输入vivo。就是查找以vivo开头的单元格的位置,因为有重复值的存在,函数仅仅会返回都一个查找的结果,在这里我们需要将查找结果减去1是因为有表头的存在,如果没有表头的话在这里就不用减去1了

第三参数:移动的列数,以为这个仅有一列,所以我们可以将第三参数省略

第四参数:偏移后区域的高度,COUNTIF($A:$A,C2&"*"),在这里我们使用countif计数同样的在这里我们也使用了C2&"*",我们假设单元格中输入vivo,他就会统计以vivo开头的单元格的个数

第五参数:偏移后区域的宽度,仅为数据仅有1列,所以可以省略第五参数

因为offset获得是一个数据区域,当我们输入不同的数据,函数就会返回不同的数据区域,从而达到智能下拉的效果

下拉菜单有重复值限制(下拉菜单选项太多)(4)

智能下拉的制作还是需要一定的函数基础的,如果你觉得难的话,可以直接使用上面的函数,替换相应的单元格位置即可

我是excel从零到一,关注我持续分享更多excel技巧

,

免责声明:本文仅代表文章作者的个人观点,与本站无关。其原创性、真实性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容文字的真实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。文章投诉邮箱:anhduc.ph@yahoo.com

    分享
    投诉
    首页