使用参考单元格位置从其他工作簿检索单元格值

所以我做了一些挖掘,发现我认为有必要实现我的目标,但我无法按照正确的顺序拼凑在一起。 我已经实现了使用文件位置从不同工作簿中引用单元格值并将该值复制到活动工作簿。

我的问题出现在我希望文件位置来自活动工作簿中的参考单元时,而不是来自embedded代码本身的文件位置。 这个想法是,其他用户可以简单地将他们的文件位置复制到引用单元格,macros从该文件中提取必要的值。

这是我的代码与来自代码本身的位置一起使用

Private Sub CommandButton1_Click() Dim XL As Excel.Application Dim WBK As Excel.Workbook Set XL = CreateObject("Excel.Application") Set WBK = XL.Workbooks.Open("R:\Branches\XXX\XXX\XXX\MASTER LOAN MEMO 8-14.xlsx") ActiveWorkbook.Sheets("Sheet1").Range("H3") = WBK.Sheets("Master Input").Range("B58").Value WBK.Close Set XL = Nothing End Sub 

这里是我的修改版本,试图完成我前面解释的:

 Private Sub CommandButton2_Click() Dim XL As Excel.Application Dim WBK As Excel.Workbook Dim Location As String Location = ActiveWorkbook.Sheets("Sheet2").Range("B2").Value Set XL = CreateObject("Excel.Application") Set WBK = XL.Workbooks.Open(Location) ActiveWorkbook.Sheets("Sheet1").Range("H3") = WBK.Sheets("Master Input").Range("B58").Value WBK.Close Set XL = Nothing End Sub 

我得到一个运行时错误1004,指出无法find文件的位置。 任何帮助将非常感激。

我不能复制这个问题,除非我使用故意的坏文件位置(即,在我的环境中不存在的位置)。 由于它看起来像你的目录结构可以很深层次,并且由于你引用驱动器号而不是服务器名称,可能该位置是拼写错误? 尝试将您要查找的文件移动到C驱动器,相应地更改Sheet2.B2中的值并对其进行testing。

顺便说一句,我没有问题复制使用各种function,&符号和连接的值。