设置范围变量时应用程序定义或对象定义的错误

时间:2017-11-21 13:27:11

标签: excel vba excel-vba

我有一个Range变量和一个单独的工作簿,我尝试填充值。我使用TheRange,首先将其设置为clientsColl.Count行和1000列的范围。

Dim TheRange As Range

With resultWorkbook.Worksheets("matrix_random")

    Set TheRange = _
        .Range(Cells(2, 2), Cells(clientsColl.Count, _
                                     1000)))

...
End With

然而,我一直收到这个错误,无法弄清楚原因..

  

应用程序定义或对象定义的错误

1 个答案:

答案 0 :(得分:3)

只是为了让未来的用户得到答案。

您需要使用.Cells声明对With resultWorkbook.Worksheets("matrix_random")进行限定。

此外,第二个Cells已交换RowsColumns

<强>代码

Dim TheRange As Range

With resultWorkbook.Worksheets("matrix_random")
    Set TheRange = .Range(.Cells(2, 2), .Cells(1000, clientsColl.Count)) '<-- you have 1 "extra" closing bracket
End With