Si el tamaño de su matriz aumenta y no desea arreglar el tamaño de la matriz, puede usar el ReDim palabra clave . Excel VBA luego cambia el tamaño de la matriz automáticamente.
Agregue algunos números a la columna A.
cuántos días laborables desde la fecha hasta la fecha
Coloque un Botón de comando en su hoja de trabajo y agregue las siguientes líneas de código:
1. Primero, declaramos la matriz denominada números. También declare dos variables de tipo Integer. Un tamaño con nombre y otro con nombre i.
Ningunonúmeros()Como Entero, TallaComo Entero, IComo Entero
Nota: la matriz aún no tiene tamaño. Los números, el tamaño y yo se eligen al azar aquí, puede usar cualquier nombre. Recuerde hacer referencia a estos nombres en el resto de su código.
2. A continuación, determinamos el tamaño de la matriz y lo almacenamos en la variable tamaño. Puede usar la función CountA de la hoja de trabajo para esto. Agregue la siguiente línea de código:
size = WorksheetFunction.CountA (Hojas de trabajo (1) .Columnas (1))3. Ahora conocemos el tamaño de la matriz y podemos redimensionarla. Agregue la siguiente línea de código:
ReDimnúmeros (tamaño)4. A continuación, inicializamos cada elemento de la matriz. Usamos un bucle.
Parai = 1ParaTallanúmeros (i) = Celdas (i, 1) .Valor
próximoI
5. Mostramos el último elemento de la matriz usando un MsgBox.
Números de MsgBox (tamaño)6. Salga del Editor de Visual Basic y haga clic en el botón de comando en la hoja.
Resultado:
redondear al 5 más cercano en Excel
7. Ahora, para ver claramente por qué esto se llama matriz dinámica, agregue un número a la columna A.
8. Vuelva a hacer clic en el botón de comando.
Conclusión: Excel VBA ha cambiado automáticamente el tamaño de esta matriz dinámica.
9. Cuando usa la palabra clave ReDim, borra todos los datos existentes almacenados actualmente en la matriz. Por ejemplo, agregue las siguientes líneas de código al código creado anteriormente:
ReDimnúmeros (3)Números de MsgBox (1)
Resultado:
La matriz está vacía.
10. Cuando desee conservar los datos de la matriz existente al redimensionarla, utilice la palabra clave Preserve.
ReDim Preservarnúmeros (3)Números de MsgBox (1)
Resultado:
cómo clasificar cuando hay empates
Ir al capítulo siguiente: Función y Sub