Macros en Visual Basic

Edición

Edición: Seleccionar celdas, rangos, filas, columnas, rangos

Selecciona una celda
Véalo aquí

Sub selecciono01()
Range("B7").Select 'selecciona la celda B7
End Sub

Seleccionar una columna
Véalo aquí

Sub selecciono02()
Range("B:B").Select 'selecciona toda la columna B
End Sub

Seleccionar rangos discontinuos
Véalo aquí

Sub selecciono03()
Range("A4:A10, D10, B5:B20").Select 'selecciona rangos discontinuos
End Sub

Seleccionar una celda del valor de una variable
Véalo aquí

Sub selecciono04()
Dim variable As Integer
variable = 5
Range("A" & variable).Select 'selecciona la celda cuya fila será el valor de la variable
End Sub

Seleccionar un rango indicado por variables
Véalo aquí

Sub selecciono05()
variable = 5
rango = ("B2" & ":E" & variable)
Range(rango).Select 'selecciona el rango B2:E hasta la fila indicada en la variable
End Sub

Seleccionar Columnas, Filas y Celdas independientes
Véalo aquí

Sub selecciono06()
Range("A:A, D:F").Select 'selecciona las columnas A, D, E y F
End Sub
Sub selecciono061()
Range("2:2, 4:7").Select 'selecciona las filas 2 y desde 4 hasta la 7.
End Sub
Sub selecciono07()
Sheets(1).Range("A1").Offset(2, 3).Select 'selecciona la celda D3
End Sub

Seleccionar Celdas en relación a otra
Véalo aquí

Sub selecciono08()
Range("D3").Select
ActiveCell.Offset(-2, 1).Select 'selecciona la celda que se encuentra 2 filas por encima
'y 1 columna a la derecha de la celda activa (=D3)
End Sub

Seleccionar y Ampliar un Rango
Véalo aquí

Sub selecciono09()
'ampliar el rango de selección
Range("A1:B5").Select
Selection.Resize(10, 4).Select '(en total serán 10 filas, 4 columnas)
'el resultado será A1:D10
End Sub

Seleccionar: combina celdas
Véalo aquí

Sub selecciono10()
'combina celdas seleccionadas
Range("B1:E1").Select
Selection.Merge
End Sub

Seleccionar: rango de celda activa
Véalo aquí

Sub selecciono11()
'selecciona la región o rango de la celda activa
Range("B2").CurrentRegion.Select
End Sub

Seleccionar: desde hacia abajo
Véalo aquí

Sub selecciono12()
Range("A2", Range("A2").End(xlDown)).Select 'seleciona desde A2 hacia abajo
End Sub

Seleccionar un rango hacia la derecha
Véalo aquí

Sub selecciono13()
Range("A2", Range("A2").End(xlToRight)).Select 'selecciona desde A2 hacia la derecha
End Sub

Seleccionar un rango hacia la izquierda
Véalo aquí

Sub selecciono14()
Range("C2", Range("C2").End(xlToLeft)).Select 'selecciona desde C2 hacia la izquierda
End Sub

Seleccionar un rango hacia arriba
Véalo aquí

Sub selecciono15()
Range("A15", Range("A15").End(xlUp)).Select 'selecciona desde A15 hacia arriba
End Sub

Seleccionar la última celda con datos
Véalo aquí

Sub selecciono16()
'para seleccionar solo la última celda con datos
Range("A1").End(xlDown).Select
End Sub

Seleccionar la última celda con datos y guarda el número
Véalo aquí

Sub selecciono17()
Dim filalibre As Integer
ActiveWorkbook.Sheets(1).Activate 'selecciona la Hoja 1
Range("A1").Select
'el control se hará sobre la columna A, a partir de la fila
While ActiveCell.Value <> ""
ActiveCell.Offset(1, 0).Select
'si la celda contiene datos, pasa a la fila siguiente
Wend
filalibre = ActiveCell.Row
'guarda en la variable filalibre el número de la primer fila sin datos.
'muestra el valor en celda "B2"
Range("B2") = filalibre
End Sub

Seleccionar la última celda con datos y guarda el nro.
Véalo aquí

Sub selecciono118()
Dim filalibre As Integer
Worksheets("Hoja1").Select
filalibre = Range("A1").End(xlDown).Offset(1, 0).Row
'la variable filalibre guarda el nro. de la primer celda vacía.
'muestra el valor en celda "B2"
Range("B2") = filalibre
End Sub

Seleccionar la última celda con datos y guarda el nro.
Véalo aquí

Sub ActualizaHoja()
'Buscar la última celda con datos, en una columna
Sheets(1).Select
'selecciona la Hoja 1
Range("A2").Select
'el control se hará sobre la columna A, a partir de la fila
While ActiveCell.Value <> ""
ActiveCell.Offset(1, 0).Select
'si la celda contiene datos, pasa a la fila siguiente
Wend
fila1 = ActiveCell.Row
'guarda en la variable fila1 el número de la primer fila sin datos.
End Sub

Seleccionar: la última celda con datos
Véalo aquí

Sub buscaultima()
'Buscar la última celda con datos, en una columna
Sheets("Hoja3").Select
If Range("A2").Value <> "" Then
filalibre = Range("A1").End(xlDown).Offset(1, 0).Row + 1
Else
filalibre = 2
End If
'la variable filalibre guarda el nro. de la primer celda vacía.
End Sub

Seleccionar una celda e indica su posición relativa y absoluta
Véalo aquí

Sub guardadirecc()
Dim lugar1 As String, lugar2 As String
Range("B3").Select
lugar1 = ActiveCell.Address
'guarda la referencia absoluta
lugar2 = ActiveCell.Address(False, False)
'guarda la referencia relativa
'devuelve en C3 las 2 direcciones concatenadas
Range("C3").Value = lugar1 & "-" & lugar2
End Sub

Seleccionar una hoja, previa a la activa
Véalo aquí

Sub seleccion1()
Sheets("Hoja2").Select
ActiveSheet.Previous.Select 'hoja anterior a la activa
Range("A2") = ActiveSheet.Name 'nombre de la hoja
Range("A3") = ActiveSheet.Index 'número de hoja
End Sub

Seleccionar una hoja, posterior a la activa
Véalo aquí

Sub seleccion2()
Sheets("Hoja2").Activate
ActiveSheet.Next.Select 'hoja posterior a la activa
End Sub
<< atras

Tabla de contenidos

adelante >>