打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
数组,这道你学VBA路上的坎

        大家在学习VBA,很多人知其然不知其所以然。


        为什么大家配置电脑的时候,希望CPU大点,内存高点?那是因为所有的程序都必须在内存中运行,内存足够大,能运行的程序也就越多越快。

        而VBA也是程序语言,同样遵循这样的逻辑。


        所以,当我们在工作表或者单元格内使用循环的时候,往往会感觉执行了相当长的时间。这是因为,程序在不停地访问我们的单元格这个对象,因此拖慢了执行的效率。为了解决这个问题,我们就要想办法将单元格内容全部放到内存中去执行,这个时候,数组出场了。


        下面我们来看两张图:



        我们把一个对象变量看成一块砖,他好比工作表里面的一个单元格;


        我们把一维数组看成一横排砖,相当于工作表中的一行;


        而二维数组,我们可以看成是好多排砖,他在工作表的分布是多行n列,n可以为1.有同学会问,多行一列不也是一排吗,只不过是竖排而已?那么,这个问题你不需要纠结,反正多行就会构成二维数组。


        那,什么是三维数组和多维数组呢?



        三维数组,我们可以看成是很多个二维数组重叠而成,就相当于一个工作簿的多个工作表;而多维数组是很多个工作簿、很多台电脑的多个工作簿等等,这个不在我们的讨论之列。


        一般而言,最常用的就是二维数组,还有一维数组。三维数组或者多维数组都可以通过数组的嵌套来解决,我前面也分享的有例子。


        那么,一维数组和二维数组怎样定义的呢?


        同变量定义一样,数组也是用关键字Dim进行定义的,如下所示:     

   

        Dim arrData(5) As String

         定义一个一维数组,他的大小是从0-5的空间,一共6个,并且,这个数组只能装字符型的数据,我们表示第一个元素用arrData(0)


        Dim arrData(1 To 5) As Integer

        定义一个一维数组,他的大小是从1-5的空间,一共5个,并且,这个数组只能装短整型的数据,我们表示第一个元素用arrData(1)


        Dim arrData(1 To 10, 1 To 20) As Date

        定义一个二维数组,他的大小是从10*20的空间,并且,这个数组只能装日期型的数据,我们表示第一个元素用arrData(1,1)


        Dim arrData(10, 20) As Long

         定义一个二维数组,他的大小是从11*21的空间,并且,这个数组只能装长整型的数据,我们表示第一个元素用arrData(0,0)


        Dim arrData(1 To 100, 1 To 10) As Variant

         定义一个二维数组,他的大小是从100*10的空间,并且,这个数组可以装任意类型的数据,我们表示第一个元素用arrData(1,1)


        正常情况下,如果我们没有特别需求,都可以定义变体型的数组,以适合装不同的数据。比如我们的工作表,不可能每一列他的类型都一样,所以用变体型的数组是最合适的。


        今天关于数组的基本知识我们就介绍到这里,接下来我们会说一些更多关于数组的知识。


        数组,如果你想提速,这一关不得不过!!

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
VBA学习笔记(4)
兰版VBA数组入门10讲
VBA进阶|利用VBA数组管理数据清单和表格
Excel-VBA:14、数组
【烟花原创】VBA零基础之第111篇VBA数组(一)
【原创】VBA学习笔记(13)VBA的数组 array
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服