用了两个函数(INDIRECT,INDEX)都是报同一个错误”列表源必须是划定分界后的数据列表或是对单一行或者“,试了一上午,之前用这个方法做过 这次却不行 求教大神
您好,研究了一天,终于解决了。完全是原创!
结论:EXCEL 中 INDIRECT 数函,名称管理器中的命名对很多符号不支持,导致前后联动失败。
具体解析:
INDIRECT函数在使用时,有一个步骤是对数据区进行名称定义,定义好后的名称在“名称管理器”中可以查看到。
根据你这个表格,你会发现,你原始数据中的“坏了/过期/不新鲜”在“名称管理器”中的名称变成了“坏了_过期_不新鲜”。这是因为名称管理器中的名称不支持“/ ”这个符号,所以系统自动将“/ ”变成了“ _ ”
而后面设置一级下拉菜单时,一级菜单中又显示的是“/ "这个符号。所以二级菜单设置时,无法正确链接到源文件。简而言之就是要保证:源文件首行所有的文字和字符=名称管理器中命名的文字和字符
但是在命名的过程中,不提示错误,直接在最后设置二级下拉菜单时提示错误。所以很多人找不到是哪里出错了。感觉这是EXCEL的一个BUG, 要是在命名时就提示出错,就不会有这么多人设置不成功了。
解决办法如下:
第一步:将”/“全部替换成”\“
然后重新对数据区域定位,命名。这时可以看到名称管理器和源数据名称以及符号完全一致了。
再设置二级下拉菜单,应用INDIRECT函数。
大功告成!
具体二级下拉菜单使用方法百度里有很多详细的教程,可自己查找。
本回答被网友采纳