我可以添加一个值到命名范围?
我有一个Excel工作表中的命名范围设置,我用它来提供数据validation下拉列表的值。 我的来源公式基本上是这样的:
=INDIRECT( "OnePartOfTheRangeName" & "AnotherPart" )
范围根据行中的另一个值而变化,所以这就是为什么我必须组合string等
我想给Data Validation列表添加一个额外的值,但是没有任何运气。 我认为,如果有某种“联盟”function,我可以结合INDIRECT列表和单个值,但我一直没能find这样的function。
有谁知道解决我的问题的另一种方法?
Excel的错误信息非常具体(实际上,这是一个很好的改变!):
所以我怀疑在尝试直接的方法上值得花费太多的精力。 而且我记住,三年没有解决完全可以理解的问题可能意味着“这是不可能的”。
然而,间接方法可能会起作用,但是有些细节可能会丢失,例如目前正在构build您命名的范围。 为了说明的目的,假定名为Part1
并且指的是R1:R12,末尾有空白(为了有扩展空间)和空白在中间(以显示多function性)。 假设“另一个部分”被命名为Part2
并且指向S1:S10,同样在中间和末尾(也在开始处)具有空白。
数据validation可能是一个列表,其中Source =whole
是T1:T22的whole
范围。
然后T1将填充:
=IFERROR(INDEX(Part1,SMALL(IF(ISBLANK(Part1),"",ROW(Part1)-MIN(ROW(Part1))+1),ROW(A1))),IFERROR(INDEX(Part2,SMALL(IF(ISBLANK(Part2),"",ROW(Part2)-MIN(ROW(Part2))+1),ROW(A1)-SUMPRODUCT(--NOT((ISBLANK(Part1)))))),""))
(获取数字帮助提供)用Ctrl + Shift + Enterinput并复制到T22。
这是dynamic的,因为在ColumnR中添加一个条目,例如将其添加到ColumnT中,然后添加到validation下拉列表中。
缺点包括,如果S
和T
条目没有sorting,下拉菜单中的“扩展空间”仍然很明显,那么下拉菜单不会按顺序sorting。
附件是一个示例,显示了Excel中的三个列表,这些列表可以组合成一个validation列表。 所有列表都是可变的,所以你可以添加/减去项目,它会更新到validation列表。
任何超过三个列表需要认真编码,因为它使用Excel来得到一点复杂。
红色的文本本质上是帮手字段,以显示最终的公式是如何构build的,但并不是真正需要的。 单元格[J2]是下拉菜单。 您可以添加到列A,B或C中的任何列表
从本质上讲,它使用Name Manager
来定义公式以及OFFSET
和COUNTA
的组合,以确定针对ROW
总项目