广

Windows XP

  • 使用技巧
  • Windows XP
  • Windows7
  • Windows8
  • Windows10
  • 电脑使用

    制作模糊查询效果Excel下拉菜单

    2019-07-05 16:10:55 次阅读 稿源:互联网
    零七广告

      

    在Excel单元格中输入特定范围的内容时,一般会利用数据有效性生成下拉列表的方式进行,但如果源列表的内容太多(比方说有数百个),这时再通过下拉列表查找需要的值就很不方便了。

    如果采用智能感知的模糊查询下拉列表菜单输入,随着回车之前输入字符的增加,列表中可供选择的项目在逐渐减少,这样就更便于选择。那么这样的效果如何实现呢?其实,利用辅助列、CELL函数,再结合数据有效性,这样的模糊查询效果下拉菜单就很容易实现(图1)。

     

    制作模糊查询效果Excel下拉菜单-1

     

    首先,在名单所在工作表中插入一个辅助列,在辅助列的第一个单元格中输入“=INDEX(B:B,SMALL(IF(ISNUMBER(FIND(CELL("contents"),B$2:B$13)),ROW($2:$13),4^8),ROW(A1)))&""”,然后,同时按下Ctrl、Shift、Enter,使得输入的内容变成数组公式,拖动鼠标向下填充(图2)。

     

    制作模糊查询效果Excel下拉菜单-2

     

    小提示:

    公式中CELL("contents")省略了第二参数,直接获得最后更改单元格的值;FIND(CELL("contents"),B$2:B$13)是查询CELL("contents")的结果是否在B2:B13单元格区域存在,如果存在则返回一个位置数值,如果不存在则返回错误值;IF(ISNUMBER(FIND(CELL("contents"),B$2:B$13)),ROW($2:$13),4^8)中,ISNUMBER函数判断FIND函数的结果是否为数值,如果为数值,则返回相关值所对应的行号,如果不是数值,则返回值4^8;SMALL函数对IF函数的结果进行从小到大取数,随着公式的向下填充,依次提取第1、2、3、4、5……N个最小值,依次得到包含最后更改单元格值的单元格的行号;INDEX函数根据SMALL函数返回的索引值,得出结果。

    接下来,选取需要设置下拉菜单的单元格区域,比如E2:E10;选择“数据”选项卡,点击“数据验证→数据验证”,在弹出窗口“设置”选项卡中,验证条件下“允许”处选择“序列”,“来源”处选择C2:C13(即辅助列下的单元格区域);再选择“出错警告”选项卡,将“输入无效数据时显示出错警告”的勾选去掉(图3)。

     

    制作模糊查询效果Excel下拉菜单-3

     

    这些设置完成后,当在E2:E10各个单元格中输入姓名部分文字后,下拉菜单就会显示出包含该文字的所有选项。如此输入是不是非常方便呢?

    零七网部分新闻及文章转载自互联网,供读者交流和学习,若有涉及作者版权等问题请及时与我们联系,以便更正、删除或按规定办理。感谢所有提供资讯的网站,欢迎各类媒体与零七网进行文章共享合作。

    零七广告
    零七广告
    零七广告