明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 953|回复: 7

VBA编程报错,subscript out of range

[复制链接]
发表于 2015-8-11 18:40:53 | 显示全部楼层 |阅读模式
本帖最后由 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见附件


还望大神指点一二

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

x
发表于 2015-8-12 16:57:47 | 显示全部楼层
换个小点的txt文件试下
 楼主| 发表于 2015-8-12 17:59:49 | 显示全部楼层
mikewolf2k 发表于 2015-8-12 16:57
换个小点的txt文件试下

原来文件的大小是228KB,加小了之后是20KB,但是还是报错,有没有什么方法解决
发表于 2015-8-13 08:44:29 | 显示全部楼层
定义的数组索引超出范围了
发表于 2015-8-13 09:06:11 | 显示全部楼层
xuminuestc 发表于 2015-8-12 17:59
原来文件的大小是228KB,加小了之后是20KB,但是还是报错,有没有什么方法解决

先拿只有几个点坐标的文件试试。
不知道你文件内容,20kb如果全部是点坐标文本的话,也是非常大的。
 楼主| 发表于 2015-8-13 10:42:22 | 显示全部楼层
看天的小树 发表于 2015-8-13 08:44
定义的数组索引超出范围了

那请问要如何修改呢?

……
头像好漂亮
发表于 2015-8-14 09:12:24 | 显示全部楼层
把源码传上来 才好调试
 楼主| 发表于 2015-8-18 19:32:25 | 显示全部楼层
看天的小树 发表于 2015-8-14 09:12
把源码传上来 才好调试

不好意思,这几天没在,没来得及回复
VBA的源码就是1楼里面贴出来的,现在把txt的文件上传了,希望大神能够多多帮忙
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-11-25 09:26 , Processed in 0.172497 second(s), 24 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表