VBA : Pb de copier coller lors d'un Selectionchange...

  • Initiateur de la discussion Initiateur de la discussion Lapou
  • 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 !

L

Lapou

Guest
Bonjour le forum !!!

Je tourne sous Win 2000 Pro et Excel 2002

Le pb que je rencontre est qu'avec le code suivante :

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim cell As Range
Range("A3:M1500").Interior.ColorIndex = xlNone
Range("A" & ActiveCell.Row & ":AD" & ActiveCell.Row).Interior.ColorIndex = 43
If Target.Row >= 2 And Target.Row <= 10000 Then
If Target.Count = 1 Then
Target.EntireRow.Columns("A:AD").Interior.ColorIndex = 43
Else
For Each cell In Target
cell.EntireRow.Columns("A:AD").Interior.ColorIndex = 43
Next
End If
End If
End Sub

lorsque je copie une cellule, il n'y a pas de pb mais lors du déplacement dans une autre cellule pour le callage, je n'ai plus rien à coller.

je ne comprends pas d'où vient le pb, peut-être du Xlnone !!! mais si j'enlève la ligne, je n'aurais plus la fonction réalisé !

merci pour votre aide et je suis pressé de vous lire ;-)

Bonne journée
Tchao
 
Bonjour,

je pense que interiorcolorindex utilise le presse papier et donc, si tu regardes en pas à pas, lorsque tu fais copier, l'icône "coller" se valide mais lorsque tu passes dan sle worksheet_change, cette icône se regrise et la fonction devient invalide.

Je n'ai pas de solution à te proposer, juste ce constat

A+

ERic
 
Re: VBA : Pb de copier coller lors d'un Selectionchange...SOLUTION

Hello le forum !

j'utilise ce code qui marche parfaitement pour le copier/coller qui me manquait

Private Declare Function OpenClipboard& Lib "user32" _
(ByVal hwnd&)
Private Declare Function CloseClipboard& Lib "user32" ()

Private Sub Worksheet_SelectionChange(ByVal Target As Excel.Range)
OpenClipboard 0&
Range("A1:M2").Interior.ColorIndex = 15
Range("N1:CC1500").Interior.ColorIndex = 15
Range("A65:CC1500").Interior.ColorIndex = 15
Range("A3:M3").Interior.ColorIndex = 37
Range("A4:M64").Interior.ColorIndex = xlNone
Range("A" & ActiveCell.Row & ":M" & ActiveCell.Row).Interior.ColorIndex = 43
If Target.Row >= 2 And Target.Row <= 10000 Then
If Target.Count = 1 Then
Target.EntireRow.Columns("A:M").Interior.ColorIndex = 43
Else
For Each cell In Target
cell.EntireRow.Columns("A:M").Interior.ColorIndex = 43
Next
End If
End If
CloseClipboard
End Sub

cependant lorsque je bosse sur d'autre feuille pendant qq temps et que ensuite je reviens sur la feuille ou le surlignement se produit, celui-ci ne fonctionne plus !!!!

est-ce normal !

Merci
Bonne journée
Lapou
 
- 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
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Retour