【发布时间】:2016-01-23 01:55:55
【问题描述】:
我几乎完成了这个宏,它允许用户选择一个文件路径,然后它将从另一个文件中的选定文件执行vlookup。到目前为止,我的代码如下所示:
Sub SelectFile()
Dim x As String
Dim lNewBracketLocation As Long
x = Application.GetOpenFilename()
MsgBox "You selected " & x
'Find the last instance in the string of the path separator "\"
lNewBracketLocation = InStrRev(x, Application.PathSeparator)
'Edit the string to suit the VLOOKUP formula - insert "["
x = Left$(x, lNewBracketLocation) & "[" & Right$(x, Len(x) - lNewBracketLocation)
Range("AA2").FormulaR1C1 = "=VLOOKUP(RC[-1]C23&R[-1]C24,'" & x & "]Access'!C3:C27,6,0)"
选择文件后,VLOOKUP 需要如下所示:
=VLOOKUP($W2&$X2,'S:\Finance Forecast\Inventory Folders\2015\LW[08-AUG-Access Export.xlsx]Access'!$C:$AA,6,FALSE)
当我运行宏时,我不断收到运行时错误“1004”:VLOOKUP 公式行上的应用程序定义或对象定义错误 我是 VBA 新手,我们将不胜感激。
问候, 卢克
【问题讨论】:
-
文件名前好像少了一个反斜杠?
-
打错了,抱歉。它应该输出: =VLOOKUP($W2&$X2,'S:\Finance Forecast\Inventory Folders\2015\LW\ [08-AUG-Access Export.xlsx]Access'!$C:$AA,6,FALSE) (空间故意用于演示目的)
-
当您手动将其键入单元格时,该公式是否有效(即:是否存在拼写错误/拒绝访问该文件夹)?
标签: vba excel filepath vlookup