快捷搜索:  汽车  科技

怎么实现下拉菜单的手动输入?如何制作智能的下拉菜单

怎么实现下拉菜单的手动输入?如何制作智能的下拉菜单我们的表格中有一个筛选的列表,你可以放在你工作表的任何位置,或者一个单独的工作表里。1.获得筛选列表要实现这样效果也不复杂,只需要用到FILTER函数的动态区域即可。注意:此函数目前仅适用于 Microsoft 365版本。下面我们就来说一下操作步骤。

我们在录入数据的时候,为了录入的便捷性,通常会制作一个下拉菜单。

有时候,下拉菜单的选项较多,或者不好分类,要从长长的下拉菜单中去选择一个正确的选项,就非常的麻烦。

今天就来给大家分享一个模糊匹配的下拉菜单的制作方法,效果如下。

怎么实现下拉菜单的手动输入?如何制作智能的下拉菜单(1)

这样,是不是就非常的方便呢?

要实现这样效果也不复杂,只需要用到FILTER函数的动态区域即可。

注意:此函数目前仅适用于 Microsoft 365版本。

下面我们就来说一下操作步骤。

1.获得筛选列表

我们的表格中有一个筛选的列表,你可以放在你工作表的任何位置,或者一个单独的工作表里。

在D2单元格输入关键字的时候,可以通过公式,得到一个筛选列表。

怎么实现下拉菜单的手动输入?如何制作智能的下拉菜单(2)

这是怎么实现的呢?

我们在K2单元格写下了如下的公式:

=filter($H$2:$H$17 ISNUMBER(FIND(CELL("contents") $H$2:$H$17)))

怎么实现下拉菜单的手动输入?如何制作智能的下拉菜单(3)

函数解析:

其中黄色部分:CELL("contents")是可以获取到当前活动单元格的值。

CELL是获取单元格信息的函数,“contents”是获取的单元格内容。这样,下拉列表才可以根据我们输入的单元格的不同来筛选不同的内容。

因为filter函数不支持模糊筛选,我们用FIND函数查找包含有输入值(通过CELL函数获取的值)的单元格。

FIND函数,如果找到了输入值,会返回输入值在字符串中的位置;找不到会返回错误值。我们用ISNUMBER函数(判断是否为数字)进行判断,如果返回的是数字,证明包含了输入值,会得到“TRUE”,反之,表示没有包含,会得到“FLASE"。

所以,公式的ISNUMBER部分“ISNUMBER(FIND(CELL("contents") $H$2:$H$17)”会返回一组由true和false组成的数组。

怎么实现下拉菜单的手动输入?如何制作智能的下拉菜单(4)

把这组数,作为filter的第二参数,就可以筛选出我们想要的下拉列表,就是这些包含了“g”的下拉选项。

怎么实现下拉菜单的手动输入?如何制作智能的下拉菜单(5)

把下拉列表写入数据验证的序列中。

在目前的EXCEL和EXCEL365中是支持数组的动态扩展区域的,把获得的动态区域写入数据验证的序列中是非常容易的。

选中D列中想要设置下拉菜单的区域,点击【数据】--【数据验证】,然后在设置选项下处选择【序列】,在来源处,写入【$k$2#】(K2是刚才写入公式的单元格),这样写可以引用筛选的动态区域作为下拉的列表,而不是像我们平时设置普通下拉菜单一样,是选择的固定区域。

怎么实现下拉菜单的手动输入?如何制作智能的下拉菜单(6)

2.设置出错警告

我们需要在【数据验证】--【出错警告】对话框下面,取消勾选【输入无效数据时显示出错警告】选项。

怎么实现下拉菜单的手动输入?如何制作智能的下拉菜单(7)

好的,到此为止,我们的模糊匹配的下拉列表就制作完成了。

当然这个方法,是对支持filter数组动态区域的版本的方法。

如果你的是其他版本,可以试试这种方法:更高效的搜索式下拉菜单,你一定要懂!

如果你的是WPS版本,就更简单了,因为它本身是支持模糊匹配的下拉菜单的。

好的,以上就是今天分享的全部内容。

猜您喜欢: