VBA - changer nom d'une Shapes

Bonjour à tous cher forumeurs,

Suis nouveau sur ce forum. Vu que j'y trouve souvent réponse à mes questions dans les anciens posts, j'y tente ma chance

J'ai créé une petite macro me permettant de copier automatiquement 10 cadres vers un nouvel emplacement.

    'sélectionne et copie les cadres verts
    ActiveSheet.Shapes.Range(Array("Rect_Green_00", "Rect_Green_01", "Rect_Green_02", _
    "Rect_Green_03", "Rect_Green_04", "Rect_Green_05", "Rect_Green_06", _
    "Rect_Green_07", "Rect_Green_08", "Rect_Green_09")).Select
    Selection.Copy

    'se positionne dans la cellule en haut à gauche de la nouvelle zone
    derniereColonne_01 = Cells(1, Columns.Count).End(xlToLeft).Offset(6, 9).Select

    'colle la sélection
    ActiveSheet.Paste

Mon problème c'est que mes Shapes portent les mêmes noms que les cadres initiaux. Je me retrouve donc avec 2x (puis 3x... etc) les mêmes noms de cadres dans mon fichier. Je voudrais en profiter pour changer les noms des cadres mais je n'y parviens pas.

Si je fais

ActiveSheet.Shapes.Range(Array("Rect_Green_02")).Select

par exemple, il ne sélectionne que le cadre 02 initial et non pas le nouveau.

Est-ce qu'il y a un moyen de:

1) sélectionner le nouveau cadre

2) lui changer son nom

3) si possible que ça se fasse automatiquement par incrémentation. Vu que mes cadres vont de 00 à 09, j'aimerais que les suivants aillent de 10 à 19 puis de 20 à 29,...

Merci d'avance aux participants.

bonjour

Mon problème c'est que mes Shapes portent les mêmes noms que les cadres initiaux

je pense que c est impossible qu ils portent les mêmes noms que les cadres initiaux

Bonjour Amir,

Pourtant c'est bien le cas. Je parle du nom que j'ai indiqué pour chaque rectangle via la "Name Box". Lors de la copie des rectangles, Excel conserve le même nom.

Ils ont peut-être un nom "caché" mais je ne vois pas où...

Bàt,

BONJOUR

vous parler de ca

nom

oui c'est bien ça.

Dans un premier temps, j'ai nommé mes rectangles "initiaux".

Ensuite je les copie à un autre emplacement (sur la même Feuille).

Enfin, je dois travailler en VBA avec les nouveaux rectangles. Sauf qu'ils portent le même nom que les "initiaux".

Bonjour

SVP vous avez le code qui vous permettre de copier les shapes Lancer le et vérifier a nouveau les noms des shapes copiées sur le coin des noms comme je vous ai montre

Voici mon fichier. Le bouton "Add Section" exécute la macro.

bonjour

la methode

ActiveSheet.Shapes("Rect_Green_00").Select
    Selection.Copy

est deferente a la methodes

  ActiveSheet.Shapes.Range(Array("Rect_Green_00", "Rect_Green_01", "Rect_Green_02", _
    "Rect_Green_03", "Rect_Green_04", "Rect_Green_05", "Rect_Green_06", _
    "Rect_Green_07", "Rect_Green_08", "Rect_Green_09")).Select
   Selection.Copy

pout etre

Référence du développeur Excel

Shapes.Range, propriété

Cette propriété renvoie un objet ShapeRange qui représente un sous-ensemble des formes d'une collection Shapes.

et :

Par exemple, Shapes(1) est plus simple que Shapes.Range(1).

je pense qu ils portent les mêmes noms que les cadres initiaux par ce que sont un esembles

alors vous pouver chaner les nom par macros ou

creer les a la deuxieme methode et comme ca exel change les automatiquement

Rechercher des sujets similaires à "vba changer nom shapes"