簡體   English   中英

vba動態vlookup范圍

[英]vba dynamic vlookup range

我想使我的vlookup范圍動態變化,所以我使用了一個變量col,但是我得到的只是結果欄中的#N / A。

Private Sub CommandButton1_Click()

path3 = Application.GetOpenFilename(Title:="Please browse Output tab excel file")
Set wbs3 = Workbooks.Open(path3)

Set aCell1 = wbs3.Sheets("Output").Range("A1:X1").Find(What:="Functions", LookIn:=xlValues, LookAt:=xlPart, _
MatchCase:=False, SearchFormat:=False)
col = aCell1.Column

lastrow1 = wbs3.Sheets("Analysis").Columns("A").Cells.Find("*", SearchOrder:=xlByRows, LookIn:=xlValues, SearchDirection:=xlPrevious).Row
With wbs3.Sheets("Analysis").Range("I2:I" & lastrow1)
    .Formula = "=VLOOKUP(H2,'Output'!col:col,1,0)"
    .Value = .Value
End With

End Sub

col放在公式中對它沒有任何意義,因為公式無法解決col的含義。 相反,您可以使用字符串串聯來解析文本。

.Formula = "=VLOOKUP(H2,'Output'!col:col,1,0)"

變成

.Formula = "=VLOOKUP(H2,'Output'!" & col.address & ",1,0)"

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM