Macro qui empêche le copier/coller

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

degap05

XLDnaute Impliqué
Bonjour à tous,

J'utilise une macro qui permet aux boutons présents sur les feuilles de mon classeur, de se positionner en regard de la ligne choisie en colonne "C".

Sub BoutonSuiveur(Target As Range)
Dim PositionLigne%, PositionColonne%
With ActiveSheet
If Target.Count > 1 Then Exit Sub ' pour éviter la sélection de plus d'une cellule
If Target.Column = 3 Then
PositionLigne = IIf((Target.Row) < 0, 0, Target.Row)
PositionColonne = IIf(Target.Column < 0, 0, Target.Column + 11)
.CommandButton1.Top = .Rows(PositionLigne).Top - 10
.CommandButton1.Left = .Columns(PositionColonne).Left - 50
.CommandButton2.Top = .Rows(PositionLigne).Top + 90
.CommandButton2.Left = .Columns(PositionColonne).Left - 25
End If
End With
End Sub


Cette macro semble empêcher le copier/coller des cellules de cette colonne.
Est-ce la fonction "Target" ?
Y a-t-il une parade ?
Merci.
 
Re : Macro qui empêche le copier/coller

Bonjour degap65,

J'ai déjà eu la même chose avec de boutons visible en fonction de la valeur A1.
Je suppose que tu fais appel a ta macro via worksheet_SelectionChange.
De ce fait excel recalcul en permanence dès que tu navigues dans ta feuille.
Si je suppose toujours bien, tu arrives à copier mais pas à coller.
Simplement car la macro s'active dès que tu changes de cellule.

Pour contourner le problème j'ai tout mis dans un module comme toi, mais je l'appel via un bouton et depuis plus de problème.

Sinon, essai de placer l'appel de ton module dans Worksheet_Change en l'adaptant avec la cellule active, puis placer le bouton en activecell.Offset (0, 11)

Edit:
Une solution toutefois possible avec selectionchange
Voir peut-être comme ceci avant l'appel de ton code:
If Not Intersect(Target, Range("C1:C" & Range("C65536").End(xlUp).Row)) Is Nothing Then

Cancel = True

boutonsuiveur

End If

J'éspère avoir pu t'éclairer avec ces quelques pistes😱
Elle devrait s'activer uniquement si tu te trouve dans la colonne C
 
Dernière édition:
Re : Macro qui empêche le copier/coller

Re,

As-tu lu mon Edit avec If not Intersect?
L'avantage avec cette méthode est qu'il ne caclcul que si tu te trouves dans la colonne C.

la première est simple. Ton sub boutonsuiveur est dans un module.
Tu crée un bouton sur ta feuille, et tu lui applique ta macro boutonsuiveur.

Sinon, essai de placer l'appel de ton module dans Worksheet_Change en l'adaptant avec la cellule active, puis placer le bouton en activecell.Offset (0, 11)
Cela pouvait-être Target.Offset(0,11) également si je ne me trompe.

Je te met un exemple de fichier avec une macro worksheet_SelectionChange, qui utilise If Not Intersect. J'avais donné un petit coup de main à l'auteur mais je ne retrouve pas son fil (désolé vincent).

Sinon post un bout de ton fichier, et je regarderai. Pas évident de mettre mon exemple ici, il est au boulot.

Bonne soirée.
 

Pièces jointes

Re : Macro qui empêche le copier/coller

Bonjour Degap05, le forum,

C'est bien ce que je te disais plus haut!😉
Je suppose que tu fais appel a ta macro via worksheet_SelectionChange.
De ce fait excel recalcul en permanence dès que tu navigues dans ta feuille

J'ai placé ton call dans worksheet_BeforeDoubleClick et cela fonctionne. Tu peu copier/coller ou tu veux. Donc ta macro s'active avec un double click comme son nom l'indique. cela fonctionne également avec Change, dans la mesure ou tes données change dans la col. C.

Regarde si cela te convient.

Bon dimanche.
 

Pièces jointes

- 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
931
Réponses
4
Affichages
596
Réponses
1
Affichages
470
Retour