首页 > 解决方案 > 带有 IF 的 Excel 数据验证(列表)包含文本

问题描述

我正在尝试做一个数据验证列表,其中下拉列表仅包含“US”或“EU”之类的文本以隔离 PO 编号。我从中提取的表格列可以包含“US12345”或“EU76543”或“ID10987”之类的内容。我需要该列表仅显示其中包含美国的项目。

我试过了:

=IF(INDIRECT(Table[PO_Number])="US*",INDIRECT(Table[PO_Number]),"")

这给出了一个值错误。

我正在尝试做的事情可能吗?如果是这样,怎么做?

标签: excelexcel-formula

解决方案


您需要在工作簿中的某处创建所需的过滤列表,因为动态列表无法直接在数据验证中输入。

例如,假设您有 Office 365,单元格中的这个公式D1

=FILTER(Table[PO_Number],LEFT(Table[PO_Number],2)="US")

将溢出所有匹配的条目。

(修改条件 - 此处检查采购订单编号的前两个字母是否为“美国” - 根据需要。)

对于数据验证,您可以使用List选项并将Source设置为:

=$D$1#

如果要验证的单元格与公式不在同一工作表中,则在上述表达式中包含工作表名称FILTER


推荐阅读