首页 > 解决方案 > Google 表格中的条件数据验证

问题描述

我目前正在 Google 表格中创建一个表单来管理员工的储物柜分配。这个想法是能够根据选择的更衣室(通过另一个下拉菜单)通过下拉菜单选择更衣室。我有一个数据库,其中有一列用于更衣室,另一列用于更衣室,最后一个用于指示拥有更衣室的人的姓名。

因此,对于第一个下拉菜单(更衣室选项),我创建了一个数据验证,其中我选择了整个更衣室列。对于第二个下拉菜单,我在我的数据库中添加了一个列,其中将根据所选更衣室显示所有结果。

这是我输入的代码: =FILTER(B2:B16;A2:A16=Form!B5)

这是我的文件的链接: link

它可以工作,但是我希望能够只显示可用的储物柜(因此在有问题的储物柜行上没有显示名称)。

我试过 =SI(C2:C16!="";B2:B16;"") 但它不起作用。我已经搜索过,但我找不到任何提到这一点的网站。

请问有人有想法吗?

在此先感谢您的帮助。

标签: google-sheets

解决方案


解决方案:

您可以使用此公式对结果范围从 A 到 B 进行排序:

=index(sort({FILTER(B2:B21;(A2:A21=Form!B5)*(C2:C21=""))\arrayformula(right(FILTER(B2:B21;(A2:A21=Form!B5)*(C2:C21=""));2))};2;TRUE);0;1)

基本上,另一列是从删除第一个字符的结果范围构建的:

arrayformula(right(FILTER(B2:B21;(A2:A21=Form!B5)*(C2:C21=""));2))

这与原始结果范围合并,然后排序。最后 INDEX 用于获取第一列。

在此处输入图像描述


推荐阅读