zoukankan      html  css  js  c++  java
  • Excel VBA数组使用方法

    1、声明数组。

    数组的声明方式和其它的变量是一样的,它可以使用Dim、Static、Private 或 Public 语句来声明。标量变量(非数组)与数组变量的不同在于通常必须指定数组的大小。若数组的大小被指定的话,则它是个固定大小数组。若程序运行时数组的大小可 以被改变,则它是个动态数组。
    数组是否从0 或1 索引是根据Option Base 语句的设置。如果Option Base 没有指定为 1,则数组索引从零开始。
    (1)声明固定大小的数组
    下面这行代码声明了一个固定大小的数组,它是个 11 行乘以 11 列的 Integer 数组:
    Dim MyArray(10, 10) As Integer
    (2)声明动态数组
    若声明为动态数组,则可以在执行代码时去改变数组大小。可以利用 Static、Dim、Private 或 Public 语句来声明数组,并使括号内为为空,如下示例所示。
    Dim sngArray() As Single

    2、获得数组的最大与最小下标。利用LBound函数与UBound 函数函数可以分别来获得数组的最小与最大下标,其语法是:
    LBound(arrayname[, dimension])
    UBound(arrayname[, dimension])
    语法包含下面部分:
    部分 描述
    arrayname 必需的。数组变量的名称,遵循标准的变量命名约定。
    dimension 可选的;Variant (Long)。指定返回哪一维的下界。1 表示第一维,2 表示第二维,如此类推。如果省略dimension,就认为是 1。

    3、ReDim 语句。ReDim 语句用来定义或重定义原来已经用带空圆括号(没有维数下标)的 Private、Public 或 Dim 语句声明过的动态数组的大小,其语法是:
    ReDim [Preserve] varname(subscripts) [As type] [, varname(subscripts) [As type]] . . .
    ReDim 语句的语法包括以下几个部分:
    部分 描述
    Preserve 可选的。关键字,当改变原有数组最末维的大小时,使用此关键字可以保持数组中原来的数据。
    varname 必需的。变量的名称;遵循标准的变量命名约定。
    subscripts 必需的。数组变量的维数;最多可以定义 60 维的多维数组。subscripts 参数使用下面的语法:
    [lower To] upper [,[lower To] upper] . . .
    如果不显式指定lower,则数组的下界由Option Base 语句控制。如果没有Option Base 语句则下界为 0。
    type 可选的。变量的数据类型;可以是 Byte、Boolean、Integer、Long、Currency、Single、Double、Decimal(目前尚不支持)、Date、 String(对变长的字符串)、String * length(对定长的字符串)、Object、Variant、用户定义类型或对象类型。所声明的每个变量都要有一个单独的 As type 子句。对于包含数组的 Variant 而言,type 描述的是该数组的每个元素的类型,不能将此 Variant 改为其它类型。
    可以使用 ReDim 语句反复地改变数组的元素以及维数的数目,但是不能在将一个数组定义为某种数据类型之后,再使用ReDim 将该数组改为其它数据类型,除非是 Variant 所包含的数组。如果该数组确实是包含在某个Variant 中,且没有使用Preserve 关键字,则可以使用As type 子句来改变其元素的类型,但在使用了此关键字的情况下,是不允许改变任何数据类型的。
    如果使用了Preserve关键字,就只能重定义数组最末维的大小,且根本不能改变维数的数目。例如,如果数组就是一维的,则可以重定义该维的大小,因为它是最末维,也是仅有的一维。不过,如果数组是二维或更多维时,则只有改变其最末维才能同时仍保留数组中的内容。

  • 相关阅读:
    10 个雷人的注释,就怕你不敢用!
    Java 14 之模式匹配,非常赞的一个新特性!
    poj 3661 Running(区间dp)
    LightOJ
    hdu 5540 Secrete Master Plan(水)
    hdu 5584 LCM Walk(数学推导公式,规律)
    hdu 5583 Kingdom of Black and White(模拟,技巧)
    hdu 5578 Friendship of Frog(multiset的应用)
    hdu 5586 Sum(dp+技巧)
    hdu 5585 Numbers
  • 原文地址:https://www.cnblogs.com/Javauser/p/9139057.html
Copyright © 2011-2022 走看看