Cómo seleccionar intervalos con Visual Basic para Aplicaciones (ejemplos para principiantes)


Resumen


En Microsoft Excel, puede seleccionar las celdas de un rango manualmente o con un simple código de Microsoft Visual Basic para Aplicaciones. En este artículo se proporcionan ejemplos que puede utilizar para seleccionar un rango de celdas.

Más información


Ejemplos de cómo seleccionar celdas manualmente

Para seleccionar manualmente todos los datos en una columna, seleccione la primera celda y presione CTRL+MÁYUS+FLECHA ABAJO.

Igualmente, para seleccionar manualmente una fila y todas las columnas adjuntas a la fila, presione CTRL+MÁYUS+FLECHA ABAJO+FLECHA DERECHA. Sin embargo, todos los datos deben ser contiguos (es decir, no puede haber filas en blanco o columnas). Además, puede seleccionar la región actual de datos (datos contiguos, sin filas en blanco ni columnas) haciendo lo siguiente:
  1. En el menú Edición, haga clic en Ir a.
  2. En el cuadro de diálogo Ir a, haga clic en Especial.
  3. En el cuadro de diálogo Ir a Especial, haga clic en Región actual y, a continuación, en
    Aceptar.
También puede seleccionar este rango utilizando código simple de Visual Basic para Aplicaciones.

Nota: Si intenta grabar este procedimiento con la grabadora de macros, no obtendrá los mismos resultados.

Ejemplos de cómo utilizar código de Visual Basic para seleccionar celdas de un rango

Microsoft proporciona ejemplos de programación con fines ilustrativos únicamente, sin ninguna garantía tanto expresa como implícita. Esto incluye, entre otras, las garantías implícitas de comerciabilidad o idoneidad para un fin determinado. En este artículo se da por supuesto que ya conoce el lenguaje de programación que se muestra, así como las herramientas empleadas para crear y depurar procedimientos. Los ingenieros de soporte técnico de Microsoft pueden explicarle la funcionalidad de un determinado procedimiento, pero no modificarán estos ejemplos para ofrecer mayor funcionalidad ni crearán procedimientos adaptados a sus necesidades específicas. El código de Visual Basic siguiente muestra cómo seleccionar rangos variables.

Si sabe cuál es la celda del principio (en este ejemplo, es la celda C1) y desea seleccionar hasta la última celda (de la misma columna) que tenga datos pero no sabe la dirección, utilice el código siguiente:
   Sub SelectRangeDown()
Range("c1", Range("c1").End(xlDown)).Select
End Sub
Nota: La macro SelectRangeDown asume que los datos son contiguos. De lo contrario, si hay celdas en blanco en la columna de datos que está seleccionando, esta macro puede no seleccionar todas las celdas de la columna.

Si los datos comienzan en la celda C1, pero no están contiguos en esa columna, utilice la macro siguiente en Microsoft Office Excel 2003 o versiones anteriores de Excel:
   Sub SelectRangeDown_Discontiguous()
Range("c1", Range("c65536").End(xlUp)).Select
End Sub
Dado que Microsoft Office Excel 2007 admite 1.048.576 filas, use la siguiente macro en Excel 2007:
 Sub SelectRangeDown_Discontiguous()
Range("c1", Range("c1048576").End(xlUp)).Select
End Sub
Si desea seleccionar desde la celda activa hacia abajo y todas las columnas situadas a la derecha (suponiendo que los datos son contiguos en todas las filas y columnas), utilice el código siguiente:
   Sub myrangearea()
Range(ActiveCell, ActiveCell.End(xlDown).End(xlToRight)).Select
End Sub
Si sabe cuál es la celda inicial (en este código de ejemplo, la celda D1) y desea seleccionar hacia abajo la columna y hacia la derecha, use el código siguiente:
   Sub RangeFromStart()
Range("d1", Range("d1").End(xlDown).End(xlToRight)).Select
End Sub
Para seleccionar todos los datos de la región actual, utilice el código siguiente:
   Sub CurrentArea()
Selection.CurrentRegion.Select
End Sub
Los ejemplos que se incluyen en este artículo muestran cómo seleccionar rangos variables en la hoja activa del libro actual.

Para obtener información adicional acerca de cómo seleccionar rangos con Visual Basic para Aplicaciones (y para obtener ejemplos más avanzados), haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
291308 Selección de celdas y rangos mediante procedimientos de Visual Basic en Excel