如何在Excel中通过Data Validation筛选Col2为Yes的Col1值生成下拉列表
实现Excel动态下拉列表(仅显示Col2为"Yes"的Col1值)
方法一:动态数组公式(适用于Excel 365/2021)
- 在空白单元格(如D1)输入公式:
=FILTER(A:A,B:B="Yes"),自动生成仅包含Col2为"Yes"的Col1值的动态列表 - 选中需要设置下拉的目标单元格,点击「数据」选项卡 →「数据验证」
- 在弹出的对话框中选择「序列」,来源栏输入
=$D$1#(引用动态数组的完整结果区域) - 确认后,下拉列表将只显示符合条件的A、C、D等值
方法二:定义名称+函数(兼容旧版Excel)
- 点击「公式」选项卡 →「定义名称」,设置名称为
ValidItems,引用位置输入公式:=OFFSET($A$1,0,0,COUNTIF($B:$B,"Yes"),1)
该公式会根据Col2中"Yes"的数量,动态提取对应行数的Col1数据 - 选中目标单元格,打开「数据验证」→ 选择「序列」,来源栏输入
=ValidItems - 确认后即可得到符合要求的下拉列表
注意事项
- 确保Col1、Col2数据区域无无关空行,避免公式计算错误
- 动态数组方法会随Col2数据更新自动同步下拉列表;旧版方法需刷新数据验证或重新打开文件生效
内容的提问来源于stack exchange,提问作者Shaishab Roy
相关产品推荐
相关产品推荐

