
用AutoCAD软件里的VBA编程定义数组问题
当我这样定义两个数组时DimStartPoint(0To2),EndPoint(0To2)AsDouble运行程序时,这个语句SetLineObj=ThisDrawing...
当我这样定义两个数组时
Dim StartPoint(0 To 2), EndPoint(0 To 2) As Double
运行程序时,这个语句Set LineObj = ThisDrawing.ModelSpace.AddLine(StartPoint, EndPoint)老通不过,提示“运行时错误5,无效的过程调用或参数”
而当我把两个数组分开定义时,
Dim StartPoint(0 To 2) As Double
Dim EndPoint(0 To 2) As Double
运行时就没有错误了,难道数组必须分开定义吗? 展开
Dim StartPoint(0 To 2), EndPoint(0 To 2) As Double
运行程序时,这个语句Set LineObj = ThisDrawing.ModelSpace.AddLine(StartPoint, EndPoint)老通不过,提示“运行时错误5,无效的过程调用或参数”
而当我把两个数组分开定义时,
Dim StartPoint(0 To 2) As Double
Dim EndPoint(0 To 2) As Double
运行时就没有错误了,难道数组必须分开定义吗? 展开
展开全部
Dim StartPoint(0 To 2) as double, EndPoint(0 To 2) As Double
每个变量都要加类型,连在一起只是省个dim而已。
每个变量都要加类型,连在一起只是省个dim而已。
追问
我在里面定义变量时Dim a,b As Integer,运行程序也没错误。也就是定义数组变量的话,每个变量要加类型?
追答
你可以,单步执行,看下本地窗口
Dim a,b As Integer
定义变量时,不加类型,默认a为 variant 型
给a赋值后,a会转变为相应类型。
同样的Dim StartPoint(0 To 2),你这里也定义的是 variant 型数组
AddLine函数应该要求的是两个double数组,所以类型不匹配。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |