首页 > 解决方案 > 创建 vba 数组时出现类型不匹配错误

问题描述

我正在尝试将一系列单元格直接放入数组中以运行一些计算。范围将始终是 A8:E?,但我永远不知道总共会有多少行。其中一列包含确定条件所需的字符串值。我设置了一个变量来查找最后一行(不,这个数据从来没有任何空白,所以设置它的方法工作得很好)。这就是我所拥有的”

    Sub use_arr()
    Dim rw As Integer

    rw = Worksheets("Sheet1").Range("A8").End(xlDown).Row

    Dim myArr()

    myArr = Worksheets("Sheet1").Range("A8:E" & rw)

    End Sub

但它不断向我抛出“Run_time error '13'”。

数组对我来说仍然是新事物,有人建议使用它们而不是循环遍历单元格以加快执行速度。所以我还在想办法。

标签: arraysexcelvba

解决方案


要么声明myArrVariant,而不是数组,要么指定Value范围的属性:

myArr = Worksheets("Sheet1").Range("A8:E" & rw).Value

推荐阅读