我想让我的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
答案 0 :(得分:2)
在公式中放置col
对它没有任何意义,因为公式不会解析col的含义。相反,你可以使用字符串连接来解析文本。
.Formula = "=VLOOKUP(H2,'Output'!col:col,1,0)"
变为
.Formula = "=VLOOKUP(H2,'Output'!" & col.address & ",1,0)"