xuminuestc 发表于 2015-8-11 18:40:53

VBA编程报错,subscript out of range

本帖最后由 xuminuestc 于 2015-8-18 19:33 编辑

本人VBA新手,遇到subscript out of range的错误。
不知道是不是因为处理的txt文件过大,还是由于其他的原因。
运行之后会提示如下错误:


程序如下
VBA程序源码如下:
Open "D:\AutoCAD\Work\QSGS\****.txt" For Input As #1
Input #1, SumPoints:
ReDim points(0 To Sumline*3-1) As Double
Dim plineObj As AcadPolyline
npoints=0
For i=1 To SumPoints '遍历轮廓线中所有点
input #1,x,y '从文件读出i点的x,y坐标
points(npoints)=x '第i点的x坐标
points(npoints+1)=y '第i点的y坐标
points(npoints+2)=0 '第i点的z坐标
npoints=npoints+3
Next i
Set plineObj=ThisDrawing.ModelSpace.AddPolyline(points)
ZoomAll
Close
******************
txt见附件


还望大神指点一二

mikewolf2k 发表于 2015-8-12 16:57:47

换个小点的txt文件试下

xuminuestc 发表于 2015-8-12 17:59:49

mikewolf2k 发表于 2015-8-12 16:57 static/image/common/back.gif
换个小点的txt文件试下

原来文件的大小是228KB,加小了之后是20KB,但是还是报错,有没有什么方法解决

看天的小树 发表于 2015-8-13 08:44:29

定义的数组索引超出范围了

mikewolf2k 发表于 2015-8-13 09:06:11

xuminuestc 发表于 2015-8-12 17:59 static/image/common/back.gif
原来文件的大小是228KB,加小了之后是20KB,但是还是报错,有没有什么方法解决

先拿只有几个点坐标的文件试试。
不知道你文件内容,20kb如果全部是点坐标文本的话,也是非常大的。

xuminuestc 发表于 2015-8-13 10:42:22

看天的小树 发表于 2015-8-13 08:44 static/image/common/back.gif
定义的数组索引超出范围了

那请问要如何修改呢?

……
头像好漂亮

看天的小树 发表于 2015-8-14 09:12:24

把源码传上来 才好调试

xuminuestc 发表于 2015-8-18 19:32:25

看天的小树 发表于 2015-8-14 09:12 static/image/common/back.gif
把源码传上来 才好调试

不好意思,这几天没在,没来得及回复
VBA的源码就是1楼里面贴出来的,现在把txt的文件上传了,希望大神能够多多帮忙
页: [1]
查看完整版本: VBA编程报错,subscript out of range