VBA ArrayList (ejemplos) - ¿Cómo crear ArrayList en Excel VBA?

Tabla de contenido

En vba hemos incorporado colecciones de tipos de datos, funciones, variables y otras declaraciones importantes, pero similar a esto, tenemos una lista de matrices en VBA en la que un usuario puede modificar y poner sus propias colecciones de variables y funciones definidas por el usuario en una matriz, hay ciertas palabras clave para la lista de matrices para diseñarla.

Excel VBA ArrayList

VBA ArrayList es un tipo de estructura de datos que usamos en VBA para almacenar los datos. ArrayList en Excel VBA es una clase que se usa para crear una matriz de valores. Esto, a diferencia de los arreglos tradicionales, donde esos arreglos tienen una longitud fija, pero Array List no tiene una longitud fija.

VAB ArrayList no forma parte de la lista VBA; más bien, es una biblioteca u objeto externo que necesitamos establecer la referencia antes de comenzar a acceder a él.

Las matrices en VBA son una parte integral de cualquier lenguaje de codificación. Al usar matrices en Excel, podemos almacenar datos con un solo nombre de variable declarando el "límite inferior y límite superior".

Con matrices regulares, necesitamos decidir el límite inferior y el límite superior de la matriz. Necesitamos decidir con mucha anticipación al momento de declarar la variable en el caso de Matrices Estáticas, y en el caso de Matrices Dinámicas, necesitamos decidir la longitud de la matriz después de declarar la matriz usando la instrucción "ReDim" en VBA.

Sin embargo, tenemos una opción más donde podemos almacenar el número "N" de valores sin declarar el límite inferior y el límite superior. En este artículo, le mostraremos acerca de esa opción, es decir, "VBA ArrayList".

Para establecer la referencia al objeto VBA ArrayList, siga los pasos a continuación.

Paso 1: vaya a Herramientas> Referencias.

Paso 2: La ventana de referencia de la biblioteca de objetos aparecerá frente a usted. Seleccione la opción “ mscorlib.dll. "

Paso 3: haga clic en Aceptar también. Ahora podemos acceder a VBA ArrayList.

Ejemplos de VBA ArrayList en Excel

A continuación se muestran los ejemplos de Excel VBA ArrayList.

Ejemplo n. ° 1: creación de una instancia de VBA ArrayList

Dado que Excel VBA ArrayList es un objeto externo, necesitamos crear una instancia para comenzar a usarlo. Para crear una instancia, siga los pasos a continuación.

Paso 1: declare la variable como " ArrayList".

Código:

Sub ArrayList_Example1 () Dim ArrayValues ​​As ArrayList End Sub

Paso 2: Dado que Array List es un objeto, necesitamos crear una nueva instancia.

Código:

Sub ArrayList_Example1 () Dim ArrayValues ​​As ArrayList Establecer ArrayValues ​​= New ArrayList End Sub

Paso 3: Ahora, podemos seguir almacenando valores en la variable de matriz utilizando el método "Agregar". En la imagen de abajo, agregué tres valores.

Código:

Sub ArrayList_Example1 () Dim ArrayValues ​​As ArrayList Establecer ArrayValues ​​= New ArrayList ArrayValues.Añadir "Hello" 'First Value ArrayValues.Add "Good"' Second Value ArrayValues.Añadir "Morning" 'Three Value End Sub

Ahora hemos asignado tres valores, cómo identificamos cuál es el primero y cómo podemos mostrar los valores o usarlos según nuestras necesidades.

Si recuerda el tipo de matriz tradicional, nos referimos al primer valor de matriz como este "ArrayName (0)"

De manera similar, también podemos usar la misma técnica aquí.

ArrayValue (0) = "Hola"
ArrayValue (1) = "Bueno"
ArrayValue (2) = "Mañana"

Dejemos mostrar esto en el cuadro de mensaje.

Código:

Sub ArrayList_Example1 () Dim ArrayValues ​​As ArrayList Establecer ArrayValues ​​= New ArrayList ArrayValues.Añadir "Hello" 'Primer valor ArrayValues.Añadir "Good"' Segundo valor ArrayValues.Añadir "Morning" 'Tres valores MsgBox ArrayValues ​​(0) & vbrayValine 1) & vbNewLine & ArrayValues ​​(2) End Sub

Ahora ejecute el código usando la tecla F5 o manualmente, luego veremos "Hola", "Bien" y "Mañana" en el cuadro de mensaje de VBA.

De esta manera, podemos almacenar cualquier cantidad de valores con Array List Object.

Ejemplo n. ° 2: almacenar valores en celdas mediante VBA ArrayList

Veamos el ejemplo de almacenar los valores asignados a las celdas en la hoja de trabajo. Ahora, mire el siguiente código VBA.

Código:

Sub ArrayList_Example2 () Dim MobileNames como ArrayList, MobilePrice como ArrayList Dim i As Integer Dim k As Integer Establecer MobileNames = New ArrayList 'Nombres de los MobileNames.Añadir "Redmi" MobileNames.Añadir "Samsung" MobileNames.Añadir "Oppo" MobileNames. Agregue "VIVO" MobileNames.Agregue "LG" Establecer MobilePrice = New ArrayList MobilePrice.Add 14500 MobilePrice.Add 25000 MobilePrice.Add 18500 MobilePrice.Add 17500 MobilePrice.Add 17800 End Sub

With two array lists, I have stored Names of the Mobile and Prices of the Mobile. Now we need to insert these values to the worksheet for this. We need to use loops. The below loop will do the job for me.

Below is the Overall code to store values to the worksheet.

Code:

Sub ArrayList_Example2 () Dim MobileNames como ArrayList, MobilePrice como ArrayList Dim i As Integer Dim k As Integer Establecer MobileNames = New ArrayList 'Nombres de los MobileNames.Añadir "Redmi" MobileNames.Añadir "Samsung" MobileNames.Añadir "Oppo" MobileNames. Agregue "VIVO" MobileNames.Agregue "LG" Establecer MobilePrice = New ArrayList MobilePrice.Add 14500 MobilePrice.Add 25000 MobilePrice.Add 18500 MobilePrice.Add 17500 MobilePrice.Add 17800 k = 0 Para i = 1 a 5 celdas (i, 1) .Value = MobileNames (k) Cells (i, 2) .Value = MobilePrice (k) k = k + 1 Siguiente i End Sub

Cuando ejecutamos el código manualmente o usamos la tecla F5, obtendremos el siguiente resultado.

Articulos interesantes...