在运行Vlookup VBA之前设置条件

时间:2014-02-16 05:51:52

标签: excel excel-vba vlookup vba

我创建了一个Vlookup,但首先想要满足一个条件来确定要使用的Vlookup。

如果cell = 1则 运行Vlookup#1

如果cell = 2则 运行Vlookup#2

细胞可能只有4个可能的变量。这必须是一个循环,因为工作表中的条目是多个。它首先会看到特定单元格的等价,然后确定要使用的Vlookup。

有什么见解?

2 个答案:

答案 0 :(得分:0)

我怀疑你需要一个循环,因为这可能是在VLOOKUP中处理的,虽然我假设条件单元格(四个值中的一个)不是VLOOKUP的触发单元格:

SO21807849 example

这里A1是条件,C1是触发值,D1包含查找公式:

=VLOOKUP(C1,$H$1:$L$3,A1+1,0)  

因此也是示例中的结果k

A2仅在查找表中查找适当的值时(在此处为框中)确定跨越多少列。

我们从ColumnH了解到,20位于表格的第二行,A1+1表示将值A1(即四个)列放在右侧。

例如,将蓝色更改为2,将黄色更改为30,结果为f

答案 1 :(得分:0)

如果值肯定是整数1到N,就像@Tim指出你可以使用CHOOSE:

=CHOOSE(A1;Vlookup1;Vlookup2;...;VlookupN)

如果A1 = 1,将执行Vlookup1,A1 = 2 Vlookup2 .... A1 = N ... VlookupN