数组基础.docVIP

  1. 1、本文档共10页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
数组基础

数组为可以存储多个数据的变量。 声明数组 Dim myArray(2) 声明一个含有3个元素的数组,即myArray(0)、myArray(1)、myArray(2) Option Base 1 Dim myArray(2) As Integer 声明一个含有2个元素的数组,即myArray(1)、myArray(2),数据类型为Integer型。 Option Base语句用来改变数组的下界,指定数组基数从1开始。 Dim myArray(1 To 10) 声明一个含有10个元素的数组,数组基数从1开始。这是另一种改变数组下界的方法,即在定义数组的同时,指定数组的上界和下界。 Dim myArray(1 To 10, 1 To 20) 声明一个10行20列的数组。 获取数组的下界和上界 LBound函数:获取数组的下界 UBound函数:获取数组的上界 说明: UBound函数返回数组的上界,数组中实际的元素个数取决于其下界。如果使用缺省下界值0,UBound函数返回的值比数组实际元素个数小1。 例如,如果数组变量myArray有10个元素且下界为0,那么UBound(myArray)返回值为9,因此数组中元素的总数应 为:UBound(myArray)+1 如果下界设置为1,那么UBound函数的返回值就等于数组的实际元素数。 因此,在确定数组元素个数时,要同时使用UBound函数和LBound函数才能确保结果正确: UBound(myArray)-LBound(myArray)+1 在使用UBound函数之前,数组应该初始化,否则会导致“下标越界”错误。 可以对多维数组使用UBound函数,但需要指定数组中的一个维数。若不指定维数,默认为第1维。 上界:UBound(myArray,dimensionNo) 下界:LBound(myArray,dimensionNo) 给数组赋值 示例1: Option Base 1 Sub FillArray1() Dim i As Long Dim myArray(10) As Long For i = 1 To 10 myArray(i) = i Next i End Sub 示例2: Option Base 1 Sub FillArray2() Dim i As Long Dim myArray As Variant ? 使用Array函数填充数组 myArray = Array(姓名, 性别, 住址, 电话) 将数组值写入工作表 With Worksheets(Sheet1) For i = 1 To UBound(myArray) .Cells(1, i).Value = myArray(i) Next i End With End Sub 在本示例中,先创建Variant型的变量myArray,然后输入数组值使其成为数组。 运行后,结果如下图所示。 示例3: Option Base 1 Sub FillArray3() Dim myArray As Variant Dim i As Long 创建一个5行2列的数组并赋值 myArray = Worksheets(Sheet2).Range(A1:B5) 遍历数组并输出值 For i = LBound(myArray) To UBound(myArray) Debug.Print myArray(i, 1), myArray(i, 2) Next i End Sub 运行后,结果如下图所示。 说明: 遍历数组中所有元素使用代码: For Each myElement In MyArray mySum = mySum + myElement Next 比下面的代码更快: For i = LBound(MyArray) To UBound(MyArray) mySum = mySum + MyArray(i) Next 并且,不用担心数组的下界和上界。但是For Each仅仅读取数组元素,如果要修改myElement,数组中的相应元素保持不变。无论数组元素是什么数据类型,myElement必须是变体数据类型。 可以使用下面的代码检查数据类型变量是否包含数组: IsArray (myVariant) 处理数组中的数据 示例1:返回数组中的最大数 Sub MaxNumInArray() Dim myArray As Variant myArray = W

文档评论(0)

pt540099 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档