我創建了一個Vlookup,但首先需要滿足條件來確定要使用的Vlookup。運行之前設置條件Vlookup VBA
如
如果細胞= 1,則 運行VLOOKUP#1
如果細胞= 2然後 運行VLOOKUP#2
只有4個可能的變量,該細胞可以相等。這必須在循環中,因爲工作表中的條目是多個。它會首先查看特定單元格的等值,然後確定要使用的Vlookup。
任何見解?
我創建了一個Vlookup,但首先需要滿足條件來確定要使用的Vlookup。運行之前設置條件Vlookup VBA
如
如果細胞= 1,則 運行VLOOKUP#1
如果細胞= 2然後 運行VLOOKUP#2
只有4個可能的變量,該細胞可以相等。這必須在循環中,因爲工作表中的條目是多個。它會首先查看特定單元格的等值,然後確定要使用的Vlookup。
任何見解?
我懷疑你需要一個循環,因爲這可能會在VLOOKUP內處理,但我假設條件細胞(四個值之一)不是爲VLOOKUP觸發細胞:
這裏A1是條件,C1觸發值和D1包含用於查找下式:
=VLOOKUP(C1,$H$1:$L$3,A1+1,0)
在示例
並因此也結果k
。
當在查找表(這裏是框)中查找適當的值時,A2僅確定跨越多少個列。
我們從ColumnH得知,20
位於表格的第二行,A1+1
表示將值A1(即四個)的列進一步向右移動。
例如,將藍色更改爲2
,將黃色更改爲30
,結果爲f
。
我不確定你的答案是我在找什麼。我會盡量用你的例子來解釋一下。列A是變量,並且說它可以等於4或5. 4與列H:L中的數據相關。 5涉及到不同的表格,測量和數據有一點不同。所以我想要做的是如果單元格A = 4,則= VLOOKUP(C1,$ H $ 1:$ L $ 3,2,0),或者單元格A = 5 = VLOOKUP(C1,$ J $ 1:$ E $ 3,4,0)。 C1是觸發器值,但列A確定要運行的Vlookup。我希望這可以讓它更清晰一些。再次感謝!! – NBunkowske
是的,我認爲是TQ(但請記住Qs的澄清通常最好作爲OP的編輯)。如果你的查詢表是不同的寬度,它可能有助於知道這些是什麼。我的答案是基於每列爲2列,例如H:I。) – pnuts
如果值是肯定的整數1到N,就像@Tim指出,你可以使用CHOOSE:
=CHOOSE(A1;Vlookup1;Vlookup2;...;VlookupN)
如果A1 = 1 Vlookup1將被執行,A1 = 2 Vlookup2 .... A1 = N ... VlookupN
這是完美的!謝謝CRondao和Tim!我還沒有嘗試過,但這會繼續運行正確嗎?例如A1 = 1,則A2 = 4.列A中的值取決於用戶輸入。 – NBunkowske
如果你複製CHOOSE公式,是的... – CRondao
有沒有辦法把它放在VBA中?我想避免將公式放入單元格中。條目數量不一致,一旦錯誤發生,其他人將使用它。我想爲其他用戶簡化它。你在說什麼對我來說很有意義,但是我想要它,所以你可以點擊一個按鈕和它的完成 – NBunkowske
您可以使用'CHOOSE()'來做到這一點。查看該功能的幫助。或者使用嵌套的IF()。 –