封闭变量工作簿的复制范围(变量由application.getopenfilename确定)

时间:2018-08-07 06:28:57

标签: excel-vba excel-2013

我正在尝试从封闭变量工作簿(调为fName)中复制范围。 无法正常工作,似乎也找不到我的错误。代码如下所示,我个人认为问题出在变量fName上,但也许我在寻找完全错误的方向。

Sub LotoRipper()
Dim fName As String
fName = Application.GetOpenFilename
Workbooks.Open fName
Workbooks(fName).Worksheets("LoTo Sleutellijst").Range("E13").Copy _
Workbooks("LOTO Sleutellijst O-M_rev4.3.xlsm").Worksheets("LoTo Sleutellijst").Range("E13")

End Sub

尝试从中学习,因此,请尽可能解释我做错了什么,而不是提供解决方案。

1 个答案:

答案 0 :(得分:1)

您是正确的-在您的变量中,您可以找到工作簿的完整路径。一旦打开它,您应该获得它的名称,例如:

Sub testMacro()
Dim fName As String
fName = Application.GetOpenFilename
Workbooks.Open fName
fName = ActiveWorkbook.Name '<--- try this
Workbooks(fName).Worksheets("sheet1").Range("E13").Copy _
Workbooks("test2.xlsx").Worksheets("sheet1").Range("E13")

End Sub