4

这是我第一次尝试编写 VBA 代码。我在模仿我在stackoverflow上找到的东西。

我想将某些列(A、B 和 E)从一个工作簿复制到另一个工作簿,并更改某些行的字体和颜色并编辑某些单元格中的文本(用单词“组”替换一个长短语)。

这是我复制的没有更改的代码:

Sub CopyColumnToWorkbook()
Dim sourceColumn As Range, targetColumn As Range

Set sourceColumn = Workbooks("Source").Worksheets("Sheet1").Columns("A")
Set targetColumn = Workbooks("Target").Worksheets("Sheet1").Columns("A")

sourceColumn.Copy Destination:=targetColumn
End Sub

我得到一个运行时错误 9,下面的行被突出显示:

Set sourceColumn = Workbooks("Source").Worksheets("Sheet1").Columns("A")

我在下面附上了源文件和目标文件,因为我希望它们在成功运行结束时看起来像。

源文件

目标文件

4

1 回答 1

11

您引用了一个不存在的工作表。通过使用其索引将其更改为引用工作簿中的第一张工作表。您也没有在文件中包含扩展名,因此它也会在工作簿对象上失败。

Sub CopyColumnToWorkbook()
Dim sourceColumn As Range, targetColumn As Range

Set sourceColumn = Workbooks("Source.xlsm").Worksheets(1).Columns("A")
Set targetColumn = Workbooks("Target.xlsm").Worksheets(1).Columns("A")

sourceColumn.Copy Destination:=targetColumn
End Sub
于 2012-12-07T00:26:21.463 回答