我可以添加一个值到命名范围?

我有一个Excel工作表中的命名范围设置,我用它来提供数据validation下拉列表的值。 我的来源公式基本上是这样的:

=INDIRECT( "OnePartOfTheRangeName" & "AnotherPart" ) 

范围根据行中的另一个值而变化,所以这就是为什么我必须组合string等

我想给Data Validation列表添加一个额外的值,但是没有任何运气。 我认为,如果有某种“联盟”function,我可以结合INDIRECT列表和单个值,但我一直没能find这样的function。

有谁知道解决我的问题的另一种方法?

Excel的错误信息非常具体(实际上,这是一个很好的改变!):

SO12207603的例子

所以我怀疑在尝试直接的方法上值得花费太多的精力。 而且我记住,三年没有解决完全可以理解的问题可能意味着“这是不可能的”。

然而,间接方法可能会起作用,但是有些细节可能会丢失,例如目前正在构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下拉列表中。

缺点包括,如果ST条目没有sorting,下拉菜单中的“扩展空间”仍然很明显,那么下拉菜单不会按顺序sorting。

附件是一个示例,显示了Excel中的三个列表,这些列表可以组合成一个validation列表。 所有列表都是可变的,所以你可以添加/减去项目,它会更新到validation列表。

任何超过三个列表需要认真编码,因为它使用Excel来得到一点复杂。

红色的文本本质上是帮手字段,以显示最终的公式是如何构build的,但并不是真正需要的。 单元格[J2]是下拉菜单。 您可以添加到列A,B或C中的任何列表

从本质上讲,它使用Name Manager来定义公式以及OFFSETCOUNTA的组合,以确定针对ROW总项目