vba如何把数组传递给c语言中,VBA简单入门29:数组的数据来源(工作表、Array、Split)-逗号分隔值文件...

40d66c78fda0922c3c3cb2530ab08c5f.png

常规流程

通常,运用数组处理Excel数据的流程是:

f3e5944e4d41da3256a293f55efcbcb7.png

常规流程

从中可知,数组充当了容器和处理器的作用;它就如一个中介,快速帮助我们处理问题解决问题达成结果。

为什么要多此一举使用中介?最大的优势是:效率高。就如我们生活当中的中介一样,往往业务熟悉,效率可观。(黑中介除外.....)

使用数组处理问题,我们第一步的操作是:将数据放入空白的数组当中(数据快到碗里去)。

数组的数据来源,主要是来自于工作表的数据,以及一些函数生成的数据,比如Array函数和Split函数等。

1、循环给数组赋值,写入数据。

一维数组赋值:

710ef7902db90ea3ba911c4c158a32bc.png

二维数组赋值:

584de1d6ccfc7ce9f2a4a68eb45b9145.png

2 、来自某些可生成数组的函数: Array函数和Split函数

Array函数生成一个一维数组,但数组声明的时候,需要声明为动态数组arr()。

当然也可以声明arr为变体变量,Dim arr 。

该数组的下界是从0开始。

face224cf032a19ba5a394c11ea103af.png

Split函数以某个字符为条件分列字符串,生成一个一维数组。该数组的下界是从0开始。

d61b50105118ce2cc6b128a9e2693b97.png

注意:这是Dim arr,arr是一个变体变量,非数组。

3、 来自于单元格区域。

凡数据来自于单元格的数组都是二维数组,其一维二维两个维度的下界都是从1开始。

从单元格中获取数据,一般使用动态数组。

3.1 数组不能是一个单元格

579502c52194bf2874a6bd700c63387c.png

3.2 凡是单元格数据生成的数组,都是二维数组

18d26031437a864549d89efab66a9a29.png

无论获取的是单元格的一行数据还是一列数据

9f5d757dd83da3ef92a1cdd5107733ca.png

一列

866a38f6daae9687c9b8abb6cf27cce0.png

一行

3.3 注意dim arr和dim arr()的不同。

dim arr() 声明的是数组

dim arr 声明的是变体变量,变体变量可以变成数组

下面代码,arr和brr在赋值后都是相同的数组,brr变体变量在赋值后自动变成了数组。

6ede176e71d728f1bbc0ab6d500f9ba4.png

3.4 动态数组取值

arr,brr都会随着Currentregion属性的单元格范围变化而改变大小。

所以,设置动态的单元格范围,数组也会随之成为动态数组。

3f61f29d35906c323407497211131707.png

5行2列

016c0b06e706c087ff0ca6b43f493715.png

7行2列

数组获取单元格数据,同样可以用循环单元格的方法写入,但是效率比直接用"="低太多,不方便,不推荐。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值