Saltar al contenido

Dudas sobre seleccionar un rango


Recommended Posts

publicado

Hola mi duda es sobre selección de rangos. ¿Para poder seleccionar un rango la hoja donde se encuentra debe estar seleccionada/activada?

Lo he intentado mientras estaba seleccionada otra hoja de esta forma:

Sheets(«Datos»).Range(«A1:A5»).Select

Pero da error, para evitarlo solo se me ocurre, seleccionar la hoja previamente:

Sheets(«Datos»).Select

Range(«A1:A5»).Select

No se si hay alguna forma de hacerlo sin seleccionar previamente la hoja, para que sea un proceso mas rápido.

¿Seria lo mismo si pongo .Select ó . Activate; cual es la diferencia entre ambas?

Por otro lado; ¿Todo lo anterior es extrepolable a otros procedimientos?, por ejemplo si quisiera poner en negrita la letra:

Sheets(«Datos»).Range(«A1:A5»).Font.Bold = True

o también debería ser:

Sheets(«Datos»).Select

Range(«A1:A5»).Font.Bold = True

Muchas gracias.

publicado

Solo puedes seleccionar un rango o activar una celda si la hoja esta seleccionada/activada.

No se puede seleccionar/activar un rango/una celda/una hoja si la hoja está oculta,

Hay que evitar en lo posible el uso de Select/Activate ya que ralentiza la ejecución de las macros.

Sheets("Datos").Range("A1:A5").Font.Bold = True sería la forma más correcta de resaltar el contenido del rango A1:A5 de la hoja Datos con independencia de la hoja seleccionada/activada que tengas en ese momento. ?

publicado

Además en VBA, no es necesario seleccionar los objetos para trabajar sobre ellos, en tu caso, solo agregas la linea que Antoni te indica y listo, entonces entre líneas lo que quiero decirte, es que tu código no se va ralentizar con ese método

 

Saludos a ambos!

  • 1 month later...

Archivado

Este tema está ahora archivado y está cerrado a más respuestas.

×
×
  • Crear nuevo...

Información importante

Echa un vistazo a nuestra política de cookies para ayudarte a tener una mejor experiencia de navegación. Puedes ajustar aquí la configuración. Pulsa el botón Aceptar, si estás de acuerdo.