2017-04-05 131 views
1

我試圖組合4個不同的數組公式。我在本網站上嘗試了一些建議,但他們沒有奏效。將vlookup公式結合到一個公式中,條件爲

這裏有一對夫婦我想:

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 

希望有人能幫助這個公式。

+1

你爲什麼使用arrayformula?哪部分?目前還不清楚最終結果應該是什麼 –

回答

0

首先必須提及的是,使用ArrayFormula在您的公式中沒有任何作用。所以我在我的解決方案中擺脫了它。

我做幫手錶,使其一個公式:

enter image description here

然後我做了3個步驟。

步驟1. VLOOKUP的查找列

使用VLOOKUP與排序表中查找列數返回:

=VLOOKUP(K6,$R$2:$T$5,2)

步驟2.找到乘數

我見在第一個公式中,您不會相乘*K6

但是您需要一個公式來匹配所有的con揚長避短。因此,我們使用power數量:

  1. K6^0 = 1
  2. K6^1 = K6

爲了讓我再次用我的助手錶電源:

=VLOOKUP(K6,$R$2:$T$5,3)

步驟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)

我仍然是爲了防止我的公式vlookup部分錯誤使用if-and

+0

謝謝,現在就明白了 – Cargo23

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)