Workbook.ActiveSheet中的运行时错误9(下标超出范围)

时间:2017-10-03 22:35:37

标签: excel vba excel-vba

我使用userform将值从一个工作簿复制到另一个工作簿。

enter image description here

我的VBA的复制部分是:

If Form.ComboBox2.Value <> "" Then
    Set sourceColumn = wb.Worksheets(cmb).Columns("B")
    Set targetColumn = Workbooks("B").ActiveSheet.Columns("A")
    sourceColumn.Copy Destination:=targetColumn

我收到运行时错误9:下标超出了Set targetColumn = Workbooks("B").ActiveSheet.Columns("A")的范围。

enter image description here

我是VBA的菜鸟,阅读让我意识到这意味着targetColumn没有获得价值。我想知道为什么。这有什么问题吗?

1 个答案:

答案 0 :(得分:0)

调试提示:

Set targetColumn = Workbooks("B").ActiveSheet.Columns("A")

之前加入这些行
dim aaa as object
Set aaa = Workbooks("B")
Set aaa = Workbooks("B").ActiveSheet

再次运行您的代码

哪一个现在失败了?