我正在尝试组合4种不同的数组公式。我在这个网站上尝试了一些建议,但它们没有用。
这是我试过的一对夫妇:
ARRAYFORMULA(IF(AND(K6>0,K6<=15),VLOOKUP(D5,Data!$F$2:$L$7,2,FALSE),0))
ARRAYFORMULA(IF(AND(K6>=16,K6<=99),VLOOKUP(D5,Data!$F$2:$L$7,3,FALSE)))*K6
ARRAYFORMULA(IF(AND(K6>=100,K6<=249),VLOOKUP(D5,Data!$F$2:$L$7,4,FALSE)))*K6
ARRAYFORMULA(IF(AND(K6>=250,K6<=499),VLOOKUP(D5,Data!$F$2:$L$7,5,FALSE)))*K6
希望有人可以帮助制定这个公式。
答案 0 :(得分:0)
首先要提到的是ArrayFormula
的使用在你的公式中什么都不做。所以我在我的解决方案中摆脱了它。
我已经制作了帮助表,使其成为一个公式:
然后我做了3个步骤。
使用带有排序表的vlookup查找要返回的列数:
=VLOOKUP(K6,$R$2:$T$5,2)
我在第一个公式中看到你没有乘以*K6
但是你需要一个公式来匹配所有条件。所以我们使用数字power
:
K6 ^ 0 = 1
K6 ^ 1 = K6
为了获得力量,我再次使用了我的助手表:
=VLOOKUP(K6,$R$2:$T$5,3)
最后一件事是在一个公式中完成所有这些:
=IF(AND(K6>0,K6<=499),VLOOKUP(D5,Data!$F$2:$L$7,VLOOKUP(K6,$R$2:$T$5,2),FALSE),0)
*K6^VLOOKUP(K6,$R$2:$T$5,3)
我仍然使用if-and
来防止公式的vlookup
部分出错。
答案 1 :(得分:0)
只是为@Max Makhrov添加一个选项。我修改了'IF'语句,将'^
'放在核心VLOOKUP部分中。如果K6违反了if-and
规则,则最终的“^
”VLOOKUP可能会出错,因为越界。所以
=IF(AND(K6>0,K6<=499),VLOOKUP(D5,Data!$F$2:$L$7,VLOOKUP(K6,$R$2:$T$5,2),FALSE)*K6^VLOOKUP(K6,$R$2:$T$5,3),0)