我在VBA上相当新,但这个错误对我来说没有意义。我试图找到数组的ubber边界,但是当我运行uBound(数组)函数时,它会清除数组,然后返回错误;我无法弄清楚原因。我停止了代码"让ub = UBound(Unique,1)"并通过它迭代,它实际上在步骤1中的数组中有值,第2步清除了数组,第3步称为错误。这也是错误首次发生的位置。
感谢所有人的帮助:
Sub count_values(unique() As Variant, cccyarray() As Variant)
Dim m As Long
Dim n As Long
Dim b As Long
Dim ub As Variant
Dim ub2 As Variant
Let ub = UBound(unique, 1)
Let ub2 = UBound(unique)
答案 0 :(得分:0)
我以前见过这种表示法,但我通常以不同的方式使用UBound。例如,如果Unique()。length为5且数组中的Last条目为“Orange”,则为:
UBound(Unique) 'Returns 5
和
Unique(UBound(Unique)) 'Returns Orange
基于此,我建议您是否要将Unique()的第一个条目存储到ub中
ub = Unique(1)
如果数组的最后一个条目进入ub2
ub2 = Unique(UBound(Unique))