为什么会出现“下标超出范围”错误?

Munkeeface

UserForm在主模块中的一系列其他进程的末尾附近有一个位于内的以下代码,但是当到达Me.GPListBox.List(iterI, 0) = Split (CCGPValues(key), " - ")(0)该代码时,我收到一条错误消息,指出下标超出范围。

在的Debug.Print紧前面For Each,控制台将输出“ Jorge Cardona”。这是拆分的第一部分。CCGPValues(key)等于“ Jorge Cardona-$ 207.31”,但是当它在GPListBox中调用相同的拆分时,它将中断。为什么通过via会发生这种情况Debug.print

    Dim key As Variant, iterI As Integer, iterX As Integer
    Debug.Print Split(CCGPValues(147), " - ")(0)
    For Each key1 In CCGPValues.Keys
            Me.GPListBox.AddItem
            Me.GPListBox.List(iterI, 0) = Split(CCGPValues(key), " - ")(0) 'Breaks here
            Me.GPListBox.List(iterI, 1) = Split(CCGPValues(key), " - ")(1)
            CCGPValuesCount = CCGPValuesCount + 1
            iterI = iterI + 1
    Next key1
cyboashu

您正在运行循环Key1For Each key1 In CCGPValues.Keys,并为您传递的分裂部key= Split(CCGPValues(key), " - ")(0)

因此,没有什么split可做的,因此未初始化结果数组。然后从空白数组尝试读取第一个元素。所以子脚本错误。

Option Explicit 避免了此类头痛。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

为什么会出现错误:列表索引超出范围

将变量分配给数组时,为什么出现数组下标超出范围错误?

为什么在 VBA 中引用另一个工作簿/工作表时会出现下标超出范围错误 9?

为什么会出现运行时错误:向量擦除迭代器超出范围

在python中写入XML文件时,为什么会出现子索引超出范围的错误?

Python 列表列表为什么会出现此错误:IndexError:列表索引超出范围?

为什么矢量下标超出范围?

base64编码字节数组时,为什么会出现“索引超出范围”错误?

当我所做的只是遍历列表的长度时,为什么会出现索引超出范围错误?

尝试 CountIf 函数时出现“下标超出范围”错误

数组下标超出范围错误-不知道为什么?

为什么我的向量下标超出范围?

在进行漂亮的汤解析的for循环期间,为什么会出现“ IndexError:列表索引超出范围”?

为什么会出现“IndexError:字符串索引超出范围”?

超出范围访问数组不会出错,为什么?

为什么为什么不断出现错误“ IndexError:列表索引超出范围”?

代码中的下标超出范围错误

C ++向量下标超出范围错误

PostgreSQL:错误:数组下标超出范围

下标超出范围(错误9)

错误:下标超出范围(骑士之旅)

(下标超出范围)错误9

R中的下标超出范围错误

Rcpp评估错误:下标超出范围

复制/粘贴-下标超出范围错误

下标超出范围错误-Saveas方法

子例程的下标超出范围错误

R错误类型“下标超出范围”

错误9:下标超出范围