Excel中的VBA – 将外部工作簿传递给worksheetfunction.formula

我正在通过一个Excel VBAmacros来遍历表单,并将dynamic公式放在特定的单元格中。 公式保持不变,但需要引用经常更改的外部工作簿。

在我的子文件开始处,我要求用户input用户select文件的位置。 我打开该文件,然后开始使用它。 这工作得很好,但我不知道如何在公式中正确引用该工作簿。

我的代码,修剪到只有线的问题:

MsgBox ("Select the PO items workbook sheet with key in column A.") POI_inputfile = Application.GetOpenFilename Set po_items = Workbooks.Open(POI_inputfile, False) Do Until i = bottom_cell 'lookup of MC against PO line item wb_out.Worksheets("Sheet1").Range("c2").Offset(i).Formula = "=VLOOKUP(H" & i + 2 & "&I" & i + 2 & ",'[" & poi_importfile & "]Export'!$A:$E,5,FALSE)" i = i + 1 Loop 

我认为这个问题是我如何处理这个公式,并通过工作簿,但我不知道我做错了什么。

帮助赞赏!

只是为了将其标记为closures – 在我原来的问题上的两个意见都是正确的,但是ASH是正确的,我应该使用.Name属性。