Unidad 4. VBA. Más estructuras (VII)



Arreglos (Vectores o Matrices) en VBA

Un Arreglo es un conjunto de valores agrupados como fila / columna o como fila y columna.

Cuando el arreglo está agrupado por fila o columna se tiene un vector, desde el punto de vista matemático, mientras que está agrupado por un conjunto de filas y columna, se tiene una matriz.

El esquema anterior es una representación de dos tipos de objetos definidos como arreglos: lineales o cuadráticos.

Los arreglos pueden tener una o más dimensiones. Matemáticamente los arreglos unidimensionales constituyen los vectores y los multidimensionales, las matrices.

En términos de programación por computadora, es más común el uso de arreglos uni y dimensionales, en algunos casos, los tridimensionales.

En VBA los arreglos tienen un nombre pues se consideran un tipo de variable. Así como cada variable requiere de una localidad de memoria para almacenar su valor, así también, cada uno de los elementos del arreglo requieren de una localidad de memoria para almacenar su valor. Por esta razón, a los elementos de un arreglo se denotan de acuerdo al siguiente criterio:

M(1), M(2), … , M(10)                        corresponde a un arreglo lineal de 10 elementos

X(1,1) X(1,2) X(1,3) X(1,4) (X(1,5)
X(2,1) X(2,2) X(2,3) X(2,4) (X(2,5)

Es un arreglo bidimensional de 2 files con 5 columnas.

Todo tipo de arreglo usado en VBA debe ser declarado mediante la instrucción DIM

Ejemplo de declaración de arreglos

DIM X(10), Y(10) AS INTEGER

En este ejemplo se está declarando a X e Y como dos arreglos de tamaño 10 cada uno. Sus elementos se designarán por X(1), X(2), …, X(10), En el caso de Y, tendremos Y(1), Y(2), .., Y(10). En ambos casos se separan 10 localidades de memoria.

En la declaración

DIM Datos(80, 5), C(8, 5) , AS Integer

En este ejemplo el arreglo Datos tiene 80 elementos por fila y 5columas y el arreglo C contiene 8 filas y 5 columnas. En este caso, para Datos se separan 400 localidades de memoria y para C, 40 localidades.

Nota:

Si en el caso del arreglo X, se intenta usar el elemento X(11), se estará usando un subíndice fuera de límite. Esto significa que los arreglos deben ser declarados tomando en cuenta su máximo tamaño.

Ejemplo 19

Escriba Un programa que lea un conjunto de 10 datos numéricos, los almacene en un arreglo unidimensional y luego los imprima.

Solución

Sea Datos el nombre del arreglo. Supondremos que tiene 50 elementos. Usaremos la sentencia DIM para definir el arreglo como de tipo Integer.

Ya que se trata de introducir 10 datos, usaremos For … Next para ingresar los datos repetidamente. La variable de conteo en el For será I, no será necesario definirla.

Usaremos FOR ::: NEXT para leer los datos y otro para imprimir los valores leídos. Aunque bien podríamos leer e imprimirlos dentro del mismo FOR … NEXT.

Usaremos a InputBox(…) como función para ingresar los datos

El código es el siguiente:

Sub Arreglos01()

Dim Datos(10) As Integer

'   Lectura de datos

For I = 1 To 10

    Datos(I) = InputBox("Ingrese el dato: ")

Next

'   Impresión de los datos

MsgBox ("Estos son los datos leídos:")

For I = 1 To 10

    MsgBox (Datos(I))

Next

End Sub

Noviembre-2010
Pág. 4.7

Atrás  Inicio  Adelante





Página inicial  Cursos Informática Gratuitos

Síguenos en:   Facebook       Sobre aulaClic            Política de Cookies