如下图所示,当在文本框中输入内容,表格会自动筛选出匹配的数据行,且随着输入内容越多,查询结果越准确,类似于搜索网站的即时响应,有更好的交互体验。1、插入文本框并设置链接单元格
点击菜单栏[开发工具]=>[插入]=>[ActiveX控件],选择[文本框]右键单击文本框,选择[属性],在弹出的“属性”窗口中,将[LinkedCell]设置为“A2”,关闭属性窗口,并退出[设计模式]。2、设置原表的辅助列
=IFERROR(FIND($A$2,N5),0)
用于查找A2单元的内容是否包含在“姓名”中,公式中使用IFERROR函数,当查不到内容时,则显示0。=IF(L5=1,$A$2&COUNTIF(L$5:L5,L5),"")
当A2单元格的内容出现在“姓名”首位时,则将A2单元格的内容与查找的次序拼接。3、查找区域设置公式,匹配查找内容
=IFERROR(VLOOKUP($A$2&$A5,$K$5:$P$74,3,0),"")
并将公式复制到C5、D5、E5单元格,并调整VLOOKUP函数的第三个参数。公式中,使用IFERROR函数,当查找不到内容时,则显示空白。
说明
如果是最新版的Excel,就不要这么复杂,只需用FILTER函数,就能根据文本框输入的内容从原表中挑选出符合条件的数据。因目前只有Excel2019版本,用不了FILTER函数,只能通过其他方式来实现,本文就是其中一种方法,不过使用的公式较多,当数据量较多时,运算量大,响应会比较慢。