Esto no puede ayudar a responder a su pregunta directamente, pero es algo que he encontrado útil cuando se trata de trabajar con rangos dinámicos que pueden serle de ayuda.
Supongamos que en su hoja de trabajo que tiene los números 100 a 108 en las celdas A1: C3:
A B C
1 100 101 102
2 103 104 105
3 106 107 108
A continuación, para seleccionar todas las celdas que puede utilizar el CurrentRegion
propiedad:
Sub SelectRange()
Dim dynamicRange As Range
Set dynamicRange = Range("A1").CurrentRegion
End Sub
La ventaja de esto es que si agrega nuevas filas o columnas a su bloque de números (por ejemplo, 109, 110, 111), entonces CurrentRegion siempre hará referencia al rango ampliado (en este caso, A1: C4).
He usado CurrentRegion bastante en mi código VBA y creo que es más útil cuando se trabaja con rangos de tamaño dinámico. También evita tener rangos de código duro en su código.
Como nota final, en mi código verás que utilicé A1 como celda de referencia para CurrentRegion. También funcionará sin importar a qué celda haga referencia (intente: reemplazar A1 por B2, por ejemplo). El motivo es que CurrentRegion seleccionará todas las celdas contiguas en función de la celda de referencia.
App.ActiveCell;) –