例如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,不知道这种描述对不对,但是我想做到这种效果。
追问一点:
这种是直接给数组加元素,如果我有很多个点 那这样子一个个添加进去岂不是工作量蛮大,有没有一种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