Saltar al contenido

Vaciar contenido portapapeles


Recommended Posts

Hola a todos;

Estoy intentando vaciar el contenido del portapapeles y no logro hacerlo.

He usado  esta instrucción y no me va.

Cita

Application.CutCopyMode = False

Desconozco otro método alternativo. 

Probé con la grabadora pero  lo único que puedo conseguir es ocultar la ventana del portapapeles.

Un saludo a todos.

image.thumb.png.897e641530b6f66ca032ebf292629358.png

Libro1.xlsm

Enlace a comentario
Compartir con otras webs

Hola

El portapapeles tiene algunas particularidades que a veces obligan a vaciarlo de forma un poco más "drástica" dependiendo del tipo de datos/objetos copiados y/o de donde se copiaron dichos datos/objetos.  Prueba así amigo:

 

Public Declare PtrSafe Function OpenClipboard Lib "user32" _
(ByVal hwnd As Long) As Long
Public Declare PtrSafe Function CloseClipboard Lib "user32" () As Long
Public Declare PtrSafe Function EmptyClipboard Lib "user32" () As Long

Sub ClearClipboard()
OpenClipboard (0&)
EmptyClipboard
CloseClipboard
End Sub

Saludos.

PD:  Declaración de funciones de la API de Windows hechas para Excel de 64 bits, basta borrar los "ptrsafe" para que solo valga para Excel de 32 bits o usar IF# para 32 y 64.

Enlace a comentario
Compartir con otras webs

Hace 1 hora, Abraham Valencia dijo:

Hola

El portapapeles tiene algunas particularidades que a veces obligan a vaciarlo de forma un poco más "drástica" dependiendo del tipo de datos/objetos copiados y/o de donde se copiaron dichos datos/objetos.  Prueba así amigo:

 

Public Declare PtrSafe Function OpenClipboard Lib "user32" _
(ByVal hwnd As Long) As Long
Public Declare PtrSafe Function CloseClipboard Lib "user32" () As Long
Public Declare PtrSafe Function EmptyClipboard Lib "user32" () As Long

Sub ClearClipboard()
OpenClipboard (0&)
EmptyClipboard
CloseClipboard
End Sub

Saludos.

PD:  Declaración de funciones de la API de Windows hechas para Excel de 64 bits, basta borrar los "ptrsafe" para que solo valga para Excel de 32 bits o usar IF# para 32 y 64.

Hola y gracias por la respuesta Abraham,  efectivamente es eso.

Ya lo había puesto anteriormente y no me iba y la culpa era mía,  no había puesto la llamada en el sitio correcto.

Ahora  ya va bien. 

Saludos y muchas?

Enlace a comentario
Compartir con otras webs

Archivado

Este tema está ahora archivado y está cerrado a más respuestas.

×
×
  • Crear nuevo...

Información importante

Echa un vistazo a nuestra política de cookies para ayudarte a tener una mejor experiencia de navegación. Puedes ajustar aquí la configuración. Pulsa el botón Aceptar, si estás de acuerdo.