Este tutorial demostrará cómo llenar una matriz con un rango de celdas.
Asignar rango a matriz
Podemos rellenar fácilmente una matriz A Variant con un rango de celdas.
Asignar valor de una sola columna
Este ejemplo recorrerá Range ("A1: A10"), asignando los valores de celda a una matriz:
12345678910111213 | Sub TestArrayValuesSingle ()'Declare la matriz como una matriz varianteDim arRng () como variante'Declare el entero para almacenar el número de filasDim iRw como entero'Asignar rango a la variable de matrizarRng = Rango ("A1: A10")'recorrer las filas - 1 a 10Para iRw = 1 a UBound (arRng)'muestra el resultado en la ventana inmediataDebug.Print arRng (iRw, 1)Siguiente iRwEnd Sub |
los UBound se utiliza para establecer el límite superior de la matriz (por ejemplo, 10) para que el bucle sepa que se repite 10 veces.
losDebug.Print La función le mostrará el valor contenido en la matriz en la ventana inmediata.
Asignar valor de varias columnas
123456789101112131415161718 | Sub TestArrayValuesMultiple ()'Declare la matriz como una matriz varianteDim arRng () como variante'Declare el entero para almacenar el número de filasDim iRw como entero'Declare el entero para almacenar el número de columnasDim iCol como entero'Asignar rango a la variable de matrizarRng = Rango ("A1: C10")'recorrer las filas - 1 a 10Para iRw = 1 a UBound (arRng, 1)'ahora - mientras está en la fila 1, recorra las 3 columnasPara iCol = 1 a UBound (arRng, 2)'muestra el resultado en la ventana inmediataDebug.Print arRng (iRw, iCol)Siguiente iColSiguiente iRwEnd Sub |
En el código anterior, hemos llenado la matriz con los valores en Rango ("A1: C10").
los UBound se usa una vez más, pero esta vez se necesita dos veces, una vez para recorrer las filas y luego nuevamente para recorrer las columnas.
los Debug.Print La función le mostrará el valor contenido en la matriz en la ventana inmediata.