Excel如何基于单元格值引用工作表设置数据验证下拉菜单?
动态调整Excel下拉菜单数据源的解决方法
你的公式写法有误,=INDIRECT(C2)! 不符合INDIRECT函数的语法规则,正确的做法是把工作表名称和数据源区域拼接成完整引用:
正确公式写法
如果目标工作表的数据源是A列的A2到A10区域,公式应该写成:=INDIRECT(C2&"!A2:A10")要是工作表名称包含空格或特殊字符,需要给名称加单引号,公式调整为:
=INDIRECT("'"&C2&"'!A2:A10")原理是用
&把C2的工作表名称、感叹号、数据源区域拼接成完整的单元格引用,INDIRECT函数会自动解析成对应工作表的指定区域。设置数据验证步骤
- 选中需要添加下拉菜单的单元格或区域
- 点击「数据」选项卡 → 「数据验证」
- 在弹出的窗口里,「允许」选择「序列」
- 在「来源」框中输入上述公式,按确定即可
之后只要C2单元格的工作表名称变化,下拉菜单的数据源就会自动切换到对应工作表的指定区域。
注意事项
- C2里的文本要和目标工作表名称完全匹配(大小写不影响,但拼写不能错)
- 数据源区域要根据实际情况调整,比如你的数据源是B列就改成
!B2:Bxx
内容的提问来源于stack exchange,提问作者Benjamin Calvert
相关产品推荐
相关产品推荐

