在vba中如何将点的坐标x,y,z放入一个数组中。

例如A坐标为(1,2,3)B坐标(2,3,4),如何用一个数组将A,B两点放入其中,
arr(0)/arr(x)=1,arr(y)=2 ,arr(z)=3 ;arr(1)/arr(x)=2,arr(y)=3
arr(z)=4,不知道这种描述对不对,但是我想做到这种效果。

dim ARR(1 to 2, 1 to 3 ) as integer
Arr(1,1)=1 Arr(2,1)=2
Arr(1,2)=2 Arr(2,2)=3
Arr(1,3)=3 Arr(2,3)=4追问

追问一点:
这种是直接给数组加元素,如果我有很多个点 那这样子一个个添加进去岂不是工作量蛮大,有没有一种function可以直接代替这个添加元素的过程,我只需要给出点的坐标,自动将其加入到arr这个二维数组中?谢谢

追答

要确定你多个坐标的存储方式。你可以自定义一个函数Function, ,也可以用循环来向数组添加坐标。只要不是手动一个数一个数打字。。。添加是很快的。10万个坐标也用不了1秒
举例 有a-z个点,并都包含3个整数坐标元素,坐标数据保存在sheet1,A列为点名称A-Z,B、C、D列为坐标值
方法1:function
pubilic arr(1 to 10000, 1 to 3) as integer
public brr(1 to 10000) as string
sub function arr(x as string, y as integer,i as long,j as integer) ’x为坐标名称,y为坐标值,i,j为数组序号
arr(i,j)=y
brr(i)=x
end function
主程序:
dim x as string
dim y,i,j as long
for i= 1 to sheets(1).usedrange.rows.count
x=sheets(1).cells(i,1)
for j= 1 to 3
y=sheets(1).cells(i, j+1)
arr(x,y,i,j)
next j
next i

温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-04-18
dim ARR(1 to 2, 1 to 3 ) as integer
Arr(1,1)=1 Arr(2,1)=2
Arr(1,2)=2 Arr(2,2)=3
Arr(1,3)=3 Arr(2,3)=4
相似回答