我正在引用另一个已关闭的工作簿来执行VLOOKUP。手动输入单元格有效,但VBA中的此代码返回错误"类型不匹配。"我错过了什么?
With ActiveSheet
For i = 2 To .Cells(Rows.Count, 4).End(xlUp).Row
.Cells(i, 5).Formula = "=VLOOKUP(""*""&$D" & i & "" * "" & ",'\\MyDirectory\[MyWorkbook.xlsx]MySheet'!$B:$D,3,FALSE)"
Next i
End With
答案 0 :(得分:2)
你想要的公式是
=VLOOKUP("*"&$D1&"*",'\\MyDirectory\[MyWorkbook.xlsx]MySheet'!$B:$D,3,FALSE)
这就是你要绑的东西吗?
Cells(i, 5).Formula = "=VLOOKUP(""*""&$D" & _
i _
& "&""*"",'\\MyDirectory\[MyWorkbook.xlsx]MySheet'!$B:$D,3,FALSE)"
诀窍是从excel单元格中复制公式,然后用"
替换每个""
测试场景
Sub Sample()
Dim i As Long
i = 1
Cells(i, 5).Formula = "=VLOOKUP(""*""&$D" & _
i _
& "&""*"",'\\MyDirectory\[MyWorkbook.xlsx]MySheet'!$B:$D,3,FALSE)"
End Sub