VB 对象数组问题

2025-01-01 11:06:53
推荐回答(4个)
回答1:

  1. 检查一下文件有没有空行

  2. 定义数组的模块有没有option base 1,也即起始下标是否一致。

  3. 数组下标量定义肯定不对,确定数组下标量是在 Answers = Split(Lines, vbCrLf) 句之后,你总不至于事先数好文件行数吧。

    dim UploadPerson() as string

    dim Subject() as string

    Answers = Split(Lines, vbCrLf) 

    redim UploadPerson(Ubound(Answers))

    redim Subject(Ubound(Answers))


回答2:

AnswerSplit = Split(Answers(i), "=")
AnswerSplit以"="号划分,你确定存在有AnswerSplit(2)。
假设Answers(i)="a=b",那就只有AnswerSplit(0)=a和AnswerSplit(1)=b,那AnswerSplit(2)是不是越界。

回答3:

UploadPerson和Subject的定义贴一下,怀疑定义的数组上标比UBound(Answers)小,导致越界

回答4:

UploadPerson和Subject
在哪定义的