Bonjour,
j'ai réalisé une macro dont l'objectif est de copier une plage de cellule comprenant des cellules de calculs, des images et des listes déroulantes, d'une feuille vers une autre feuille.
La plage de cellule en question possède des listes déroulantes (données> validation>liste). la copie se passe bien lorsque je n'utilise pas une des listes déroulantes. Lorsque que je modifie le texte d'une cellule en choisissant un autre élément de la liste, et que je lance ma macro de copie vers l'autre feuille là ca bug à ce niveau du code (en rouge) :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 Set plagerech = Sheets(FICHE_CALCUL).Range(cimage & ld_module & ":" & cimage & lf_module) For Each obj In ActiveSheet.ShapesWorksheets(FICHE_CALCUL).Activate Set plageimg = Range(obj.TopLeftCell.Address) If Not Intersect(plageimg, plagerech) Is Nothing Then 'Verifie si le shape est dans la plage de cellules cible obj.Copy Sheets("PRESENTATION").Range(cimage_pres & ld_pres).PasteSpecial End IfNext obj
Il n'arrive pas a copier le shape qui ne semble plus reconnu.
Si par contre j'enregistre mon fichier excel, et que je lance la macro là ca marche bien...
je vous avoue que je ne comprend pas pourquoi... en quoi l'enregistrement joue t il sur la reconnaissance des shape, en quoi la modification d'un élément d'une liste de selection peut provoquer un probleme dans la copie ou supression d'un shape ?
Merci pour votre aide !
Partager