首页 > 解决方案 > 根据 excel 中的选择创建下拉列表的限制

问题描述

我有一个带有两张纸的 excel 文件。第二张表 ( Report ) 包含基于第一张表 ( Data ) 的数据验证单元格。在第二张表中, Select XXX中显示的下拉列表取决于Generate Report中的选择。当Generate Report设置为列表中前五个以外的任何内容时,“Select XXX”通过代码将年份显示为默认列表(这没有问题)...INDIRECT("Year")...。问题是excel不允许添加更多代码(似乎我达到了极限)。问题是 - 我如何操纵此代码以适应生成报告中的每个选项?或者,是否有另一种方法可以实现?

下拉列表的数据验证源代码为=IF($B$4=Data!$Q$5,INDIRECT("Client"), IF($B$4=Data!$Q$6,INDIRECT("Month"), IF($B$4=Data!$Q$7,INDIRECT("Product_Service"), IF($B$4=Data!$Q$8,INDIRECT("Sector"), IF($B$4=Data!$Q$9,INDIRECT("Trans_Type"),INDIRECT("Year"))))))

请参阅https://drive.google.com/file/d/1VKkGHjlJzLQqx4J9kyd_bCKG4r0Q7HkG/view?usp=sharing上的示例文件

标签: excelvalidationdrop-down-menu

解决方案


您可以做的是将范围名称放在 R 列中,然后对它们进行 VLOOKUP:

=IFERROR(INDIRECT(VLOOKUP($B$4,Data!$Q$5:$R$9,2,FALSE)),INDIRECT("Year"))

然后,您可以拥有任意数量的项目列表。


推荐阅读