Please ensure Javascript is enabled for purposes of website accessibility
Powered by Zoomin Software. For more details please contactZoomin

AVEVA™ Plant SCADA

Multi-Dimensional Arrays

  • Last UpdatedJul 18, 2023
  • 1 minute read

VBA supports multi-dimensional arrays, declared using multiple subscripts. Each subscript must be separated by a comma, and each subscript represents a separate dimension of the array.

The following example declares a two-dimensional array.

Dim dblMat(20, 20) As Double

Unless specifically defined in the array declaration statement, default lower bound settings are used. The default lower bound is zero, unless set by the module option base statement setting. For more information on bounds, see "Array Subscripts in VBA."

Reusing the previous example, either or both dimensions can be declared with explicit lower bounds.

Dim dblMat(1 To10, 1 To10) As Double

Arrays can be more than two dimensional. This declaration creates an array that has three dimensions with sizes 6 elements by 4 elements by 3 elements, using base 0:

Dim ArrTest(5, 3, 2)

You can efficiently process a multi-dimensional array with the use of for loops. In the following statements the elements in a multi-dimensional array are set to a value.

Dim L As Integer, J As Integer

Dim TestArray(1 To 10, 1 to 10) As Double

For L = 1 to 10

For J = 1 to 10

TestArray(L,J) = I * 10 + J

Next J

Next L

Arrays declared (using the dim statement within procedures,) do not retain their values between procedure calls in VBA.

See Also

Dynamic Size Arrays

Arrays of Variables

Array Subscripts

Option Statements

Fixed Size Arrays

Related Links
TitleResults for “How to create a CRG?”Also Available in