Macro évenementielle et copier/coller

  • Initiateur de la discussion Initiateur de la discussion Guy_M
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Guy_M

XLDnaute Occasionnel
Bonjour,

J'utilise la macro événementielle suivante : https://www.excel-downloads.com/threads/filtre-automatique-dynamique.99718/ cela fonctionne très bien mais si (quand un filtre est actif) je copie une cellule (ctrl-c) puis que je clique dans une autre cellule, je ne peux plus coller (la cellule copiée n'est plus entourée de ses pointillés).

Est-ce normal ?
Si oui, comment contourner ?
Si non, comment corriger ?

Par avance, je vous remercie pour vos réponses.

Salutations
Guy
 
Re : Macro évenementielle et copier/coller

Bonjour Guy, bonjour le forum,

Je n'aime pas trop utiliser l'événement SelectionChange
car il agit dès que l'on active une cellule de l'onglet, c'est à dire pratiquement tout le temps et ralenti tout. Mais parfois la solution passe par ça et je l'utilise.
Le plus étonnant dans ton cas c'est que le code ne fait absolument pas référence à la cellule active Target
. J'imagine que c'est le moyen que tu as trouvé pour faire lire ton code de façon automatique. Mais comme tu le vois cela pose d'autres problèmes... N'aurait-il pas été préférable de mettre un bouton (CommandButton) pour exécuter ton code sur ordre ?
 
Re : Macro évenementielle et copier/coller

Bonsoir.
Extrait de l'aide:
CutCopyMode, propriété

Voir aussi S'applique à Exemple Spécificités
Cette propriété renvoie ou définit l'état du mode Couper ou Copier. Il peut s'agir de la valeur True, False ou d'une constante XLCutCopyMode, comme indiqué dans les tableaux suivants. Type de données Long en lecture-écriture.
Valeur renvoyée

[TH="width: 71%"]Description[/TH]

[TD="class: TT, width: 29%"] False [/TD]
[TD="class: TT, width: 71%"]N'est ni en mode Couper, ni en mode Copier[/TD]

[TD="class: TT, width: 29%"] xlCopy [/TD]
[TD="class: TT, width: 71%"]Est en mode Copier[/TD]

[TD="class: TT, width: 29%"] xlCut [/TD]
[TD="class: TT, width: 71%"]Est en mode Couper
[/TD]

Valeur définie

[TH="width: 71%"]Description[/TH]

[TD="class: TT, width: 29%"] False [/TD]
[TD="class: TT, width: 71%"]Annule le mode Couper ou Copier et supprime la marque de sélection.[/TD]

[TD="class: TT, width: 29%"] True [/TD]
[TD="class: TT, width: 71%"]Annule le mode Couper ou Copier et supprime la marque de sélection.[/TD]
Alors exécutez le moins de chose possible dans votre Worksheet_SelectionChange si Application.CutCopyMode = xlCopy pour ne pas engager d'action qui l'annule.
Cordialement.
 
Re : Macro évenementielle et copier/coller

Bonjour Robert,

En effet, l'utilisation de SelectionChange permet une action automatique. L'argumentation a été développée dans le fil de discussion cité en référence.

Merci
Guy
 
Re : Macro évenementielle et copier/coller

Bonjour Dranreb,

Cette macro ne fait presque rien : réappliquer le filtre c'est pour cela que je ne comprends pas l'annulation du mode copier/coller.

Je ne comprends pas la différence entre "CutCopyMode=False" et "CutCopyMode=True"

Donc, pour que cette macro soit neutre, je dois tester CutCopyMode en entrée et restituer l'état de CutCopyMode à la sortie, je devrais y arriver.

Existe-t-il quelque chose pour conserver le "annuler" ? (NDR : oui, faut utiliser Application.OnUndo en fin de procédure)

Merci pour vos réponses.
Guy
 
Dernière édition:
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
5
Affichages
974
Réponses
9
Affichages
975
G
Réponses
3
Affichages
1 K
Retour