将多个名称列表添加到Excel中的条件下拉列表中

我正在创build一个电子表格,其下拉菜单包含基于多个单元格的内容,并根据这些条件添加不同的内容。 我一直在寻找过去一小时试图寻找网上的东西(在这里,谷歌等),或​​者我没有寻找正确的东西,或没有人想过以前尝试过,但无论如何,在这里,我们走:

重点是,在数据validation中,命名组的引用似乎只有单数,但我希望能够添加多个命名组到单个下拉列表取决于可用。 例如,一个下拉框(D1)可以具有基于两个单元格(A1,A2)的值,并且都是下拉本身。 如果A1和A2都表示应该在D1列表中显示某些内容,我希望两者都显示出来(按照我检查单元格的顺序指定)。 这甚至可以使用Excel,如果是这样,我该怎么做呢?

哇,这真的是一个挑战,我很享受这一个! 对不起,第一个答案是不是你需要的,但这应该做的!

所以首先我设置我的表格如下:

在这里输入图像说明

然后,我使用数据validation为选项1和2添加了True和False条件 在这里输入图像说明

然后我在H列中input公式来创build一个基于选项的新列表

=IF($A$2=TRUE,E2,"") =IF($A$2=TRUE,E3,"") =IF($A$2=TRUE,E4,"") =IF($A$2=TRUE,E5,"") =IF($A$2=TRUE,E6,"") =IF($B$2=TRUE,F2,"") =IF($B$2=TRUE,F3,"") =IF($B$2=TRUE,F4,"") =IF($B$2=TRUE,F5,"") =IF($B$2=TRUE,F6,"") 

因此,对于前5个公式,如果选项是A2,则为True,那么它将在列表1中显示适当的项目到dynamic列表中。

对于最后5个公式,如果select是B2,则它将显示列表2中的相应项目到dynamic列表中

例如:

如果A2 = True&B2 = False 在这里输入图像说明

如果A2 = False&B2 = True 在这里输入图像说明

在这一点上,我意识到dynamic列表中的空格将是一个问题,所以我必须创build一个ARRAY来删除空格。 网上有很多例子可以做到这一点,但这是最简单的公式。 (我不能解释ARRAY公式我每隔一段时间使用它们,但是没有完全理解它们,我对此感到抱歉)

在I2中,我放置了以下ARRAY公式(I2以上的单元必须保持空白)

 =INDEX($H$2:$H$11, MATCH(0, IF(ISBLANK($H$2:$H$11), 1, COUNTIF(I1:$I$1, $H$2:$H$11)), 0)) 

input公式后必须按CTRL + SHIFT + ENTER,使其成为数组公式

然后使用自动填充将公式下拉到I11

在这里输入图像说明

然后在C2中,我创build了一个使用数据validation的dynamic下拉列表和一个OFFSET公式来引用包含在索引列表中的有效文本项(OFFSET公式在http://www.ozgrid.com/Excel/DynamicRanges中解释。 htm )

公式是:

 =OFFSET($I$2,0,0,MATCH("*",$I$2:$I$11,-1),1) 

OFFSET公式用于C2的数据有效性的源字段中 在这里输入图像说明

现在,C2中的列表基于A2和B2中的选项是dynamic的

例如:

A2和B2 =假 在这里输入图像说明

A2 =真,B2 =假 在这里输入图像说明

A2 =真,B2 =真 在这里输入图像说明

A2 =假,B2 =真 在这里输入图像说明

有可能是另一种方式来做到这一点与VBA(我不是那么伟大),但现在这应该做的! 希望这可以解决你的问题!

这是可能的,我能够做到这一点:

  1. 在这个例子中,我在列D和E中列出了项目列表:

    D列包含字母A,B,C,D
    E栏包含E,G,H,I

    价值观可以是你所需要的。

  2. 然后,我使用数据validation – >列表引用D列中的列表,在单元格B1中创build了一个下拉列表 在这里输入图像说明

  3. 然后,我使用数据validation – >列表引用E列中的列表,在单元格C1中创build了一个下拉列表 在这里输入图像说明

  4. 然后,我使用数据validation – >列表引用了B1和C1中的下拉列表,在单元格A1中创build了一个下拉列表 在这里输入图像说明

这会根据B1和C1中的选定值dynamic更改A1中的下拉列表

在下面的图片中,我select了B和H,它们改变了单元格A1中的列表,使其具有选项B和H.

在这里输入图像说明