Excel验证取决于列值

时间:2013-01-11 13:38:15

标签: excel excel-vba vba

我的问题如下。我正在开发一个excel数据库,我有一个类似下面的表

Columna_A | Column_B

值1 ........ | ..a

值2 ........ | ..a

值3 ........ | ..a

值4 ........ | ..b

值5 ........ | ..b

我想添加一个验证列表,该列表根据可能是“a”或“b”的其他字段值显示值。我知道你可以这样做分开列表并使用“= Indirect()”fórmula,但我需要列表在同一个表上。

1 个答案:

答案 0 :(得分:0)

所以这就是我所做的。

首先,我选择了我计划进行数据验证的单元格范围。

就我而言,它是B1:B7。

然后我在验证标准和选择的“列表”下选择了“允许:”。

然后我将此公式放在“来源:”

    =IF(A1="a",$C$1:$C$3,$D$1:$D$3)

如果您没有锚定(不要使用$符号)A1,它将调整公式为B1:B7中所有单元格的连续值。例如,数据验证会将B3的公式更改为:         = IF(A3 = “一”,$ C $ 1:$ C $ 3,$ d $ 1:$ d $ 3)

观察:

For value 'a'

For another value besides 'a'

如果您愿意,我可以将此工作簿上传到某个地方。