分享

VBA数组 | 从入门到精通(2)- 数组写入和输出

 asaser 2022-04-05


今天我们继续VBA数组专题,申明我们已经讲的比较清晰了,今天我们进入第二篇:赋值及与单元格的关系!

我们在Excel中,数组主要打交道的都是单元格区域,所以非要有必要好好说说他赋值和回写与单元格的关系!


数组写入与取出




>> 批量写入

我们通过下面的方式把内容写入数组,也就是一般说的赋值!
数组(索引)=要赋值的值(写入数组的值)
图片


>> 按索引写入及修改

除了上面的,我们也可以按照需要给特定的索引赋值!当然如果已经写过值,我们重新赋值就是覆盖了原值,你也可以叫做修改吧!

图中 索引2和4的值,已经变成了更新后的值!
图片

>> 取出内容

提取内容和写入都靠索引,所以你应该已经猜出,我们如何取出数组中的内容

图片

以上说的基本都是一维数组,其实二维数组,我先你也可以推测出来,不过考虑初学,我还是大概写一下!

图片



怎么样?是不是都比较简单,但是实际开发过程中,使用比较多的是和单元格区域交互,所以下面,我们就来聊聊动态数组和单元格区域!



数组与单元格区域



单元格区域中的内容如图:
图片

我们如何把单元格的内容写入到数组,数组的内容如何写回到单元格呢?

>> 区域写入数组

下面是使用做多的赋值方式,单元格区域直接赋值给动态数组arr,根据本地窗口我们大概可以看出对应关系,arr下面的第一层arr(n)是第一维-对应单元格区域中的行,arr(n)展开arr(n,m)对应的就是列,正好跟单元格行列对应,方便记忆!


当然你也可以直接申明一个变体型,比如直接申明,关于他们的区别,我们放到重置数组和调整区域大小部分再聊!

dim arr
图片


出了区域复制,我们再看看单行和单列赋值后如何呈现!

>> 单行单列写入数组

这个可能给很多人的预期有点不同,不管是单行还是单列,写入数组都是二维的!

图片

根据以上,我们可以得出:任何单元格区域写入数组,都是二维的!

避免错过更多精彩,长按关注小编
友情提醒:大家千万不要这么干!定好大小的数值,是不能直接赋值的,如果想写,我们只能通过索引逐个写入!

图片


说完赋值,我们再来说说回写到单元格的问题的


>> 回写到单元格

一般写入,我们都要指定的区域和数组大小相同,赋值对应的部分可能报错,具体我们还是一一来看!

语法格式:
单元格区域=数组
图片

写入结果:
图片

你可能也察觉出来了,数组的大小,你可能说我不知道呀,难道要我去数吗?其实根本不用,这就涉及到数组大小的问题了!

下期预告:我们就聊聊数组大小、数组重置、调整大小、维度转换

上期内容:

图片

VBA数组 | 从入门到精通(1)- 数组申明



    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多