Curso Excel VBA y Macros – Cap. 11 – Copiar, Autofiltro, Ordenar, Borrar, Insertar comentarios y más
Ya hemos visto que las propiedades sirven para describir o cambiar características de los objetos en Excel como rangos, hojas, gráficos, etc. Por otro lado, los métodos nos ayudan a aplicar acciones sobre los mismos objetos.
En este video veremos los métodos más usando aplicados en rangos de celdas explicados mediante ejemplos. Los métodos que veremos son:
-
AddComment
-
AutoFilter
-
AutoFit
-
Clear
-
Clearcontents
-
ClearFormats
-
Copy
-
PasteSpecial
-
Select
-
Sort
Ver video Capítulo 11 Excel VBA & Macros
Suscríbete al canal de EXCELeINFO en YouTube para aprender más de Excel y macros.
NOMBRE |
DESCRIPCIÓN |
AddComment |
Añadir comentarios en celdas |
AutoFilter |
Aplica autofiltro |
AutoFit |
Auto ajustar ancho de columnas |
Clear |
Limpiar celdas de contenido, formato, comentarios. |
Clearcontents |
Limpiar celdas solo de contenido |
Copy |
Copiar celdas |
PastEspecial |
Pegado especial |
Select |
Seleccionar |
Sort |
Ordenar |
AddComment. Insertar comentarios en celdas. El método AddComment nos permite ingresar comentarios en celdas individuales. Si deseamos insertar comentarios en varias celdas a la vez, usaremos el ciclo For Each, el cual veremos en videos posteriores.
Sub AgregarComentarios()
Range(“A1”).AddComment “Comentario de prueba”
End Sub
AutoFilter. Este método nos permitirá activar el Auto filtro en un rango de celdas.
Sub AutoFiltro()
‘Opción 1
Range(“A1”).AutoFilter
‘Opción 2
Range(“A1”).CurrentRegion.AutoFilter
End Sub
AutoFit. Cuando deseamos ajustar el ancho de las columnas al contenido de las misma, usamos el método AutoFit. Podemos aplicar el método a un rango de celdas usando Range o usamos Cells para autoajustar el ancho de las columnas a toda la hoja.
Sub AjustarAnchoColumna()
‘Opción 1
[A1].CurrentRegion.Columns.AutoFit
‘Opción 2
Cells.Columns.AutoFit
End Sub
Clear. ClearContents. ClearFormats. Dependiendo de lo que deseemos borrar en las celdas, podemos usar el método Clear para limpiar el contenido y formato de una celda. Si solo deseas borrar el contenido usamos ClearContents o ClearFormats para quitar el formato a las celdas.
Sub LimpiarCeldas()
‘Borrar contenido
Range(“A1”).CurrentRegion.ClearContents
‘Borrar formatos
Range(“A1”).CurrentRegion.ClearFormats
‘Borrar todo
Range(“A1”).CurrentRegion.Clear
End Sub
Copy. Para copiar y pegar en Excel con VBA usamos el método Copy. Existe a manera rápida de hacerlo, que es usando el método Copy y como parámetro Destination, el rango de destino. También se puede copiar usando Copy, luego Select para seleccionar el rango de destino y Paste para pegar.
Sub Copiar()
‘Opción 1
Range(“A1:B10”).Copy Destination:=Range(“D1”)
‘Opción 2
Range(“A1:B10”).Copy
Range(“D1”).Select
ActiveSheet.Paste
Application.CutCopyMode = False
End Sub
PasteSpecial. En Excel existe el Pegado especial, que nos permite copiar celdas y elegir qué elemento deseamos pegar, puede ser, solo valores, formatos, comentarios, fórmulas, etc. Con el método PasteSpecial podemos hacer lo mismo, incluso podemos hacer combinaciones de elementos que deseemos pegar.
Sub PegadoEspecial()
‘Pegamos sólo valores y formatos
Range(“A1:B10”).Copy
Range(“D1”).PasteSpecial xlPasteValues
Range(“D1”).PasteSpecial xlPasteFormats
Application.CutCopyMode = False
End Sub
Select. El método Select es usando generalmente por la Grabadora de macros y nos permite seleccionar un rango de celdas. Solo en casos muy puntuales recomiendo usar Select, ya que hemos viste anteriormente que no es necesario elegir una celda para modificarle propiedades y valores.
Sort. En una práctica común ordenar datos en Excel y en VBA claro que también podemos usar esa funcionalidad. Con el método Sort podemos definir las columnas a ordenar, si deseamos que se ordenen en ascendente o descendente. En el siguiente ejemplo ordenamos por una columna y luego ordenamos en base a dos columnas.
Sub Ordenar()
‘Ordenar una columna
Range(“A1:B10”).Sort Key1:=Range(“A1”), Order1:=xlAscending, Header:=xlYes
‘Ordenar dos columnas
Range(“A13:B22”).Sort Key1:=Range(“A13”), Order1:=xlDescending, _
Key2:=Range(“B13”), Order2:=xlAscending, Header:=xlYes
End Sub
Descargar archivo de ejemplo
011 – Métodos más usados en rangos de celdas.zip
Si te gustó este tutorial por favor regístrate en nuestra Lista de correo y Suscríbete a nuestro canal de YouTube para que estés siempre enterado de lo nuevo que publicamos.