J'imagine que mon titre n'est pas très clair, mais voici mon problème.
J'ai une fonction private sub worksheet_activate qui réalise un filtre et un tri automatique à chaque fois qu'on visualise ma feuille pour que les résultats soient toujours à jour.
D'un autre côté, sur mon classeur, j'ai une macro qui, entre autres, doit faire un copier coller avec liaison d'une feuille A sur cette feuille en question.
Sauf que du coup, dans mon code, lorsque je copie les cellules de ma feuille A et que je dis de les coller sur l'autre feuille avec ma private sub, très logiquement excel m'actualise mon tri avant de continuer ma macro. Mais en faisant cela, il «*oublie*» la donnée copiée et me fait une erreur lorsque je fais le paste.
J'ai donc deux questions :
- peut-on « bloquer » cette private sub pour ne pas la lancer, ou à défaut, peut-on « mémoriser » la donnée du « copy » pour qu'elle puisse être collée ?
- sinon, peut-on faire un copier coller avec liaison sans passer par la sélection des deux feuilles (à l'image d'un range.copy destination:=range normal) ? Là je suis contraint de faire un range.paste link:=True
Pour info, la partie de mon code :
Merci !
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 Sheets(FeuilleEtatAvancement).Range(Cells(ligne + 1, 3), Cells(ligne + 1, 5)).Copy Sheets(FeuilleTB).Select 'à partir de là, il m'active mon autre code automatique à l'activation de ma sheet FeuilleTB Range(Cells(ligne + 1, 3), Cells(ligne + 1, 5)).Select ActiveSheet.Paste link:=True
Partager