Tutoriales de matrices | |
---|---|
Array Mega-Guía | sí |
Obtener tamaño de matriz | |
Matriz clara | |
Matriz de filtros | |
Transponer matriz | |
Matriz de retorno de función | |
Eliminar duplicados | |
Cubrimos una introducción a las variables y constantes en nuestro tutorial introductorio Tipos de datos de VBA: variables y constantes. En este tutorial, veremos qué son las variables de matriz y cómo puede usarlas en su código.
¿Qué es una variable de matriz VBA?
Una variable de matriz de VBA almacena una lista o grupo de elementos. Una variable de matriz de VBA también se puede considerar como un grupo de variables, almacenadas con el mismo nombre y con el mismo tipo de datos. Todos los elementos de la matriz deben ser del mismo tipo. Un ejemplo sería una lista de frutas. Una matriz puede almacenar texto o números. Hace referencia a un elemento en una matriz utilizando su número de índice. Puede declarar una variable de matriz utilizando la palabra clave Dim, Static, Public o Private.
Variable de matriz estática
Una variable de matriz estática tiene un tamaño fijo o un número determinado de elementos en la lista. Declararía una variable de matriz estática de la siguiente manera:
123456789 | Subdeclarar AStaticArrayVariable ()Dim zapatos (1 a 3) como cadenaZapatos (1) = "Botas"Zapatos (2) = "Sandalias"Zapatos (3) = "Zapatillas"End Sub |
Puede mostrar un determinado elemento en la matriz haciendo referencia a su número de índice como se muestra en el siguiente código:
1234567891011 | Subdeclarar AStaticArrayVariable ()Dim zapatos (1 a 3) como cadenaZapatos (1) = "Botas"Zapatos (2) = "Sandalias"Zapatos (3) = "Zapatillas"Zapatos Debug.Print (1)End Sub |
Si presiona F5 para ejecutar su código, obtendrá el siguiente resultado en la ventana Inmediato:
Variable de matriz dinámica
El tamaño de una variable de matriz dinámica cambia en tiempo de ejecución y, en otras palabras, se establece solo en tiempo de ejecución. Inicialmente, no declara la cantidad de elementos o elementos en la matriz como para la variable de matriz estática, pero usa la palabra clave ReDim para especificar el tamaño o la cantidad de elementos que tiene una matriz dinámica. Luego puede cambiar el tamaño de su matriz usando la palabra clave ReDim:
123456789101112131415161718192021 | Sub DeclararingADynamicArrayVariable ()Dim differentvegetables () como cadenaReDim diferentes vegetales (3)differentvegetables (1) = "zanahorias"differentvegetables (2) = "calabaza"differentvegetables (3) = "butternut"MsgBox Join (differentvegetables, vbCr)ReDim diferentes verduras (4)differentvegetables (1) = "zanahorias"differentvegetables (2) = "calabaza"differentvegetables (3) = "butternut"differentvegetables (4) = "repollo"MsgBox Join (differentvegetables, vbCr)End Sub |
Cuando ejecuta este código, obtiene el cuadro de mensaje con todos los elementos de la matriz que se especificó utilizando la palabra clave ReDim, luego obtiene otro cuadro de mensaje que muestra el número actualizado de elementos en la matriz.
El resultado es: