从一个Excel复制到另一个:索引超出有效范围

时间:2016-07-01 10:39:12

标签: excel vba excel-vba

我正在尝试从一个Excel工作簿复制到另一个工作簿。以下是相关的代码段:

directory = "C:\VBA\Import\"
fileName = Dir(directory & "*.xl??")

Set sourceColumn = Workbooks(directory & fileName).Worksheets(1).Columns(1)
Set targetColumn = ThisWorkbook.Worksheets("IMPORT").Columns(1)
sourceColumn.Copy Destination:=targetColumn

执行此操作时,我在“set sourceColumn”行中收到“运行时错误9:索引超出有效范围”(从德语版Excel翻译)。

我无法弄清楚原因。我在执行期间使用调试器仔细检查了文件名,这是正确的。此文件中还存在工作表和列的索引(它有一个包含5列的工作表)。

有什么想法吗?提前谢谢!

1 个答案:

答案 0 :(得分:1)

尝试这样,它对我有用:

Workbooks.Open directory & Filename
Set sourceColumn = Workbooks(Filename).Worksheets(1).Columns(1)

您无法像这样引用已关闭的工作簿