Copiar y pegar en Excel con macros y sin macros VBA

Copiar y Pegar en Excel es una tarea relativamente sencilla. Cuando aprendemos Excel es una de las tareas básicas, junto con otras tareas. Sin embargo, esta sencilla tarea la podemos automatizar con macros y adecuarlas a ciertas situaciones de copiado de celdas.

Opciones para Copiar y pegar

Voy a mostrarte unos sencillos pasos para copiar y pegar celdas en Excel:

  • Para copiar usamos Control + C. Elegimos la celda de destino y presionamos Control + V.
  • Para copiar usamos Control + Insert. Elegimos la celda de destino y presionamos Shift + Insert.
  • Elegimos el rango de celdas y damos clic derecho y elegimos Copiar. Elegimos la celda de destino y damos clic derecho y elegimos Pegar.

Ver video Copiar y pegar en Excel con macros y sin macros

Suscríbete al canal de EXCELeINFO en YouTube para aprender más de Excel y macros.

Pegado Especial

Las combinaciones anteriores nos permiten copiar y pegar rangos de celdas. Al usarlas se copian íntegras las celdas del rango elegido, incluyendo formato, fórmulas, etc.

Si tenemos celdas donde ya hemos aplicado algún tipo de formato, podemos copiar y pegar solo algún elemento del rango. En la siguiente lista vemos las distintas opciones que podemos copiar y pegar:

  • Todo.
  • Fórmulas.
  • Solo valores.
  • Formatos.
  • Comentarios.
  • Validación de datos.

Para lograrlo, solo debemos copiar las celdas de origen usando cualquier cualquier combinación antes vista. Posteriormente damos clic derecho y elegimos Pegado especial. Veremos un formulario donde elegiremos qué parte de la celda de origen deseamos pegar en las celdas de destino.

Pegado especial en Excel.

Figura 1. Pegado especial en Excel.

Copiar y pegar valores en datos filtrados

Infortunadamente si deseamos copiar y pegar rangos de celdas, por ejemplo, pegar valores en celdas filtradas, no es posible, ya que las celdas no están continuas. Cuando lo deseamos hacer Excel nos mostrará un mensaje cuando deseamos solo copiar y pegar: Esta acción no funcionará en selecciones múltiples.

Copiar y pegar en selecciones múltiples en Excel.

Figura 2. Copiar y pegar en selecciones múltiples en Excel.

Y veremos el siguiente mensaje si deseamos copiar y pegar valores en celdas filtradas: Esta selección no es válida. Asegúrese de que las áreas de copia y pegado no se superpongan a menos que tengan el mismo tamaño y forma.

Para solucionar este inconveniente, será necesario utilizar una macro que recorra todas las celdas del rango elegido. La macro validará si la fila está oculta, y si no lo está entonces asignará a la celda visible el valor de la celda, sin fórmulas.

'EXCELeINFO
'MVP Sergio Alejandro Campos
'http://www.exceleinfo.com
'https://www.youtube.com/user/sergioacamposh
'http://blogs.itpro.es/exceleinfo

Sub CopiarYpegarFiltrados()

If MsgBox("Deseas continuar?", vbQuestion + vbYesNo) = vbNo Then Exit Sub

For Each Celda In Selection

    If Celda.EntireRow.Hidden = True Then
    'nada
    Else
        Celda.Value = Celda.Value
    End If

Next Celda

End Sub

Código VBA para copiar y pegar en Excel usando macros

Las siguientes macros las podemos usar en nuestros desarrollos donde sea necesario copiar y pegar valores de manera automatizada.

Sub Copiarypegar()

Range("H3").Copy Destination:=Range("L3")

End Sub

Sub PegadoEspecial()

'Todo
Range("D2:D21").Copy Destination:=Range("F2")

'Fórmulas
Range("D2:D21").Copy: Range("G2").PasteSpecial xlPasteFormulas
'Valores
Range("D2:D21").Copy: Range("H2").PasteSpecial xlPasteValues
'Formatos
Range("D2:D21").Copy: Range("I2").PasteSpecial xlPasteFormats
'Comentarios
Range("D2:D21").Copy: Range("J2").PasteSpecial xlPasteComments
'Validación
Range("D2:D21").Copy: Range("K2").PasteSpecial xlPasteValidation

Application.CutCopyMode = False

End Sub

Descarga el archivo de ejemplo

Copiar y pegar en Excel con macros y sin macros – EXCELeINFO.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.

You may also like...

Leave a Reply

Your email address will not be published. Required fields are marked *