分享

这才是最高级的Excel下拉菜单!

 爺↘傷憾 2019-04-01

利用数据 - 有效性制作的excel下拉列表,如果选项过多,会给选择输入带来不少的麻烦。如果....能输入一个或几个字符,就只显示以这些字符开头的选项(联想式输入)..该多好哦!..高手们用VBA实现,可不懂VBA是何物的你,这个功能也可以实现吗?今天,兰色将分享不用VBA也可以实现联想式输入的技巧。

实现效果

单元格为空,打开下拉列表


输入关键词宝来后,再打开下拉列表。


上面的效果是你梦想中的功能吧。现在和兰色一起来实现它。

---------------操作步骤------------------

第1步 源数据排序。目的是把相似的内容排列在一起。如上图C列所示。

第2步 选取A列要设置的区域,右键菜单 - 定义名称。在如图所示的新那建名称窗口中:

名称:车型

引用位置:

=OFFSET(Sheet1!$C$1,MATCH(Sheet1!A2&'*',Sheet1!C:C,0)-1,,COUNTIF(Sheet1!C:C,Sheet1!A2&'*'),1)

公式说明:

  • match()查找输入的字符串在C列的开始位置,&'*'实现模糊查找。

  • Countif()统计以输入字符串开头的车型有多少个

  • offset() 获取开始行数和总行数,用offset生成动态引用区域。


第3步 数据选项卡 -  数据有效性 - 允许“序列”,来源 =车型


第4步 在数据有效性窗口中,去掉“输入无效数据时显示出错警告”的勾选。


兰色说:今天的技巧用到了offset+match+countif函数,其实在excel中构建动态区域时,总是这三个函数配合实现的。如果还不了解这几个函数的用法,可以在微信平台回复函数的英文拼写。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多