Como pegar solamente valores de una celda a otra hoja

Sub CopiarImprimir()
'
' CopiarImprimir Macro
'
Application.ScreenUpdating = False

Sheets("Imprimir").Select
Worksheets("Imprimir"). Range("A4:C50"). Clear
Range("E4:J49"). Clear
Sheets("Planillas").Select
Sheets("Planillas"). Range("G4").Copy Destination:=Sheets("Imprimir"). Range("A1")

'Esta línea es la que trato de cambiar y no lo logro, por que mi intención es que solo 'pegue valores en la hoja "Imprimir" de dicha celda de origen.

'¿Podrán ayudarme?

Sheets("Planillas"). Range("A6:C51").Copy Destination:=Sheets("Imprimir"). Range("A4")

Sheets("Planillas"). Range("G6:H51").Copy Destination:=Sheets("Imprimir"). Range("E4")
Sheets("Planillas"). Range("K5:N5").Copy Destination:=Sheets("Imprimir"). Range("G3")
Sheets("Planillas"). Range("K6:N51").Copy Destination:=Sheets("Imprimir"). Range("G4")
Range("A4").Select

Respuesta
1

Puedes utilizar el método .PasteSpecial con el argumento xlPasteValues

Sub CopiarImprimir()
    Application.ScreenUpdating = False
    Sheets("Imprimir").Range("A4:C50").Clear
    Sheets("Imprimir").Range("E4:J49").Clear
    Sheets("Planillas").Range("G4").Copy
    Sheets("Imprimir").Range("A1").PasteSpecial Paste:=xlPasteValues
    Application.CutCopyMode = False ' Limpiar el portapapeles después de pegar
    Sheets("Planillas").Range("A6:C51").Copy
    Sheets("Imprimir").Range("A4").PasteSpecial Paste:=xlPasteValues
    Application.CutCopyMode = False
    Sheets("Planillas").Range("G6:H51").Copy
    Sheets("Imprimir").Range("E4").PasteSpecial Paste:=xlPasteValues
    Application.CutCopyMode = False
    Sheets("Planillas").Range("K5:N5").Copy
    Sheets("Imprimir").Range("G3").PasteSpecial Paste:=xlPasteValues
    Application.CutCopyMode = False
    Sheets("Planillas").Range("K6:N51").Copy
    Sheets("Imprimir").Range("G4").PasteSpecial Paste:=xlPasteValues
    Application.CutCopyMode = False
    Sheets("Imprimir").Range("A4").Select
    Application.ScreenUpdating = True
End Sub

Este código copiará solo los valores de los rangos especificados de la hoja "Planillas" a los rangos correspondientes de la hoja "Imprimir" utilizando .PasteSpecial Paste:=xlPasteValues.

2 respuestas más de otros expertos

Respuesta
3

En el video Nº 71 de mi canal encontrarás todas las instrucciones necesarias (con imágenes) de los distintos copiados-pegados en VBA:

https://www.youtube.com/watch?v=gyIlEjsAEfo 

Respuesta
2

Cuando realizas el pegado en este caso después del copy destination:=sheets("imprimir"). Range("E4").

PasteSpecial Paste:=xlValues

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas