Pegar con código vba excel

Ejecuto Control+C para copiar desde una hoja excel, activo otra hoja para pegar solo valores pero sin ocupar el botón de pegado especial, es decir, automáticamente que me peque solo los valores.

Pienso que el siguiente códido: Selection.PasteSpecial Paste:=xlPasteValues

Tiene que estar dentro de un evento de la hoja a pegar.

1 Respuesta

Respuesta
1

No existe el evento "a pegar"

Existen los eventos Selection (cuando seleccionas una celda) o Change (cuando cambias el valor de una celda)

Podrías probar de esta forma. Copia la siguiente macro en los eventos de la "hoja2"

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
'Por.Dante Amor
    If Not Intersect(Target, Range("C:C")) Is Nothing Then
        If Target.Count > 1 Then Exit Sub
        Selection.PasteSpecial Paste:=xlPasteValues
    End If
End Sub

Sigue las Instrucciones para poner la macro en los eventos de worksheet

  1. Abre tu libro de excel
  2. Para abrir Vba-macros y poder pegar la macro, Presiona Alt + F11
  3. Del lado izquierdo dice: VBAProject, abajo dale doble click a worksheet("Hoja2")
  4. En el panel del lado derecho copia la macro

Ahora, copia algo de la Hoja1, selecciona la "Hoja2", selecciona una celda de la columna "C", en automático se pega como valores. Lo delimité a la columna C para que no te pegue en cualquier celda que seleccionas. Si no quieres la delimitación y quieres pegar en cualquier celda, entonces utiliza la siguiente macro:

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
'Por.Dante Amor
        If Target.Count > 1 Then Exit Sub
        Selection.PasteSpecial Paste:=xlPasteValues
End Sub

.

Avísame cualquier duda

.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas