Guardar posición de un rango de celdas VBA

Necesito que al seleccionar un rango de celdas, por ejemplo "A1:H1", se quede guardada esa selección para que otros algoritmos trabajen en la hoja, seleccionando otras celdas y trabajando con ellas; y para acabar se vuelva a quedar seleccionado ese rango de celdas "A1:H1"

2 respuestas

Respuesta
1

[Hola

Para iniciar te diría que no es recomendable seleccionar celdas para trabajar con ellas:

https://abrahamexcel.blogspot.pe/2017/12/el-uso-y-abuso-de-select-y-selection-en.html 

Ya yendo a tu pregunta, usa algo así:

Dim MiRango As String
MiRango = Selection.Address
'Aquí todo lo que quieras hacer

Range(MiRango).Select

Saludos]

Abraham Valencia

Respuesta
1

prueba estas 2 macros funcionan asi, ambas seleccionan los datos una de manera fija ("a1:h1") y otra de manera dinamica partiendo de A1 y terminado hasta la ultima celda y columna con datos que esten consecutivas y le da un nombre a esa region que graba en la hoja de excel justo donde ves la flecha hay guarda los nombres que asignes a todas las regiones de datos, y con solo seleccionarla manualmente te llevara a esa region sin importar en que hoja este, por macros solo tienes que usar esta instruccion en las demas macros set region=range("datos") y con eso la macro carga los datos de esa region para que trabaje con ellos o si quieres visualizar los datos solo das region.select, trata de usar lo menos posible select, activecell, selection solo alentan la macro

Sub guardar_rango()
Range("a1:h1").Name = "datos"
Range("datos").Select
End Sub
'
Sub guardar_datos2()
Set datos = Range("a1").CurrentRegion
'si no quieres inlcuir los encabezados usa esta instruccion
With datos
    .Rows(2).Resize(.Rows.Count - 1, .Columns.Count).Name = "datos"
End With
Range("datos").Select
End Sub

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas