Bloquer un coller si pas de copier

Fermé
Signaler
Messages postés
1
Date d'inscription
vendredi 12 juillet 2013
Statut
Membre
Dernière intervention
12 juillet 2013
-
Messages postés
16194
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
18 janvier 2022
-
Bonjour à tous,

Voila mon problème qui j'espère trouvera une solution mais je n'en doute pas.

Alors, J'ai une macro qui réalise un coller sur un ficher principale à partir d'un autre fichier excel source sur lequel on réalise le copier manuellement car le nom du fichier ne sera jamais le même et ne peut être renommé par les utilisateurs donc je ne peux l'appeler pour faire un copier coller classique.

Tout se passe bien jusqu'au moment où l'utilisateur oublie de faire le copier et lance de suite la macro coller se qui à pour effet de faire planter la macro. Logique on ne peut pas coller se que l'on ne copie pas.

En faite se que je souhaiterais serai d'afficher un message si rien n'a été copier "Attention aucune données copie".

Donc est-il possible de vérifier par macro si "quelque choce" à bien été copier avant de le coller, que se soit des cellules vide ou plaines.

Merci d'avance.

1 réponse

Messages postés
16194
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
18 janvier 2022
1 580
Bonjour,

a adapter pour votre code.

lancer test apres un copier clic souris sur cellule et sans copier

'http://www.excelabo.net/excel/presse_papier
Declare Function CountClipboardFormats Lib "user32" () As Long
'fonction presse-papier vide: faux si donnees, vrai si vide
Function IsClipboardEmpty() As Boolean
IsClipboardEmpty = (CountClipboardFormats = 0)
End Function

'Tu peux l'utiliser dans une feuille de calcul : =IsClipboardEmpty() ou dans du code vba :

Sub test()
MsgBox "presse papier vide ??: " & IsClipboardEmpty
End Sub
0