Shape : Renuméroter

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 !

suistrop

XLDnaute Impliqué
Bonjour,

J ai hérité d un fichier excel avec des shapes que je dois mettre e forme.
Malheuresement les numéro de ces shapes ne se suivent pas ca comment vers 120 et ca fini vers 150 alors qu il n y a que 20 shapes.
Je suppose que mon prédécesseur a du faire des tests et les supprimer car ils n apparaissent nul part.

Je voudrais savoir comment renuméroter les shapes.
je vous joint un exemple.
Je voudrais renuméroter ces shapes de 1 a 7 merci.

Merci.
 

Pièces jointes

Re : Shape : Renuméroter

Bonjour suistrop, tototiti,

Un peu comme tototiti, et ça me paraît un peu lourd, mais ça devrait marcher quelque soit le type de shape, et si leur numéro est < 100000 :

Code:
Sub Renum()
Dim sh As Object
i = 0
For Each sh In ActiveSheet.Shapes
i = i + 1
sh.Name = Nom(sh.Name, True) & 100000 + i
Next
For Each sh In ActiveSheet.Shapes
sh.Name = Nom(sh.Name, True) & Nom(sh.Name, False) - 100000
Next
End Sub

Function Nom(sh$, n As Boolean)
txt$ = ""
nb$ = ""
For i = 1 To Len(sh)
c$ = Mid(sh, i, 1)
If IsNumeric(c) Then
nb = nb & c
Else
txt = txt & c
End If
Next
Nom = IIf(n, txt, nb)
End Function

Edition : j'ai fait 2 boucles dans Renum, car 2 shapes ne peuvent avoir le même nom, j'ai vérifié.

A+
 
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
2
Affichages
997
J
Réponses
1
Affichages
1 K
Réponses
8
Affichages
1 K
G
Réponses
2
Affichages
1 K
GeoLek
G
G
Réponses
24
Affichages
4 K
Retour