首页 > 解决方案 > 无法解决 VBA 数组错误 13 类型不匹配

问题描述

我正在尝试创建数组的子集。我谷歌,阅读其他帖子等,但我无法管理它。我在这里做错了什么?

Dim startIndex As Long
startIndex = 13
Dim myArray As Variant
myArray = tbl.ListRows(x).Range

Dim sortArray As Variant
Dim y, yy As Long
y = 0
yy = 1
For y = startIndex To tbl.DataBodyRange.Columns.Count
    sortArray(yy) = myArray(1, y)
    yy = yy + 1
Next

sortArray(yy)它说类型不匹配,但我没有看到。
sortArray(yy)是否与 中的整数不匹配myArray(1,y)

标签: excelvba

解决方案


谢谢@Damian,这就是问题所在。

    Dim sortArray As Variant
    Dim sortArrayDim As Long
    sortArrayDim = tbl.DataBodyRange.Columns.Count - startIndex
    ReDim sortArray(sortArrayDim)
    Dim y, yy As Long
    y = 0
    yy = 0
    For y = startIndex To tbl.DataBodyRange.Columns.Count
        sortArray(yy) = myArray(1, y)
        yy = yy + 1
    Next

推荐阅读