Comment sélectionner une photo à l'intérieur d'une case Excel

Salut à tous, j'ai une question à vous poser :

La problématique est la suivante : je voudrais changer le nom d'une photo que je viens d'insérer dans une case grâce à une macro. Pour cela je souhaite sélectionner la photo dans la case puis appliquer la ligne de code suivante :

Selection.Name = NouveauNom

Mon problème c'est que je n'arrive pas à sélectionner la photo dans la case. Quelqu'un aurait la commande qui me permet de faire ça ?

Merci d'avance

Gametxxx

Bonjour,

Premièrement, comme j'écris au moins 10 fois par jour qu'il faut éliminer les Select et consorts pour avoir un code correct et rapide, un minimum optimisé, je ne vais donc pas encourager ta démarche de sélection !

Deuxièmement, si tu ne peux sélectionner en pointant la cellule, c'est que ton image, comme tout objet Shape, n'est pas inséré dans une cellule, l'objet est dans la feuille. Ce que tout le monde devrait savoir.

Si tu ne disposes pas du nom pour pointer directement l'objet, tu peux le détecter par rapport à la cellule dans laquelle se trouve son angle supérieur gauche ou bien celle ou se trouve son angle inférieur droit.

Par exemple :

Sub Test()
    Dim shp As Shape
    For Each shp In ActiveSheet.Shapes
        If shp.TopLeftCell.Address = "$J$8" Then
            shp.Name = "NouveauNom": Exit For
        End If
    Next shp
End Sub

Cordialement.

Bonjour,

Je ne suis pas sûr mais... Quand tu ajoutes une forme tu fais add [...].select et après tu peux faire selection.cequetuveux

Pour les images essaye d'ajouter select à la fin de ton add pour voir si ça suffirait

Merci de me faire un retour

EDIT:

Bon eh bien je m'incline, tu gères bien mieux la gestión des formes et images que moi

Ça marche bien sûr le Select sur un ajout de forme. L'enregistreur le restitue généralement, car en procédant en manuel, la forme reste sélectionnée en la posant...

Mais je préfère en VBA utiliser alors une variable objet qu'on initialise lors de l'ajout, et dont on dispose ensuite pour toutes les opérations additionnelles éventuelles (redimensionnement, repositionnement, renommage...) avec plus de souplesse et moins de volatilité que la sélection.

Cordialement.

edit : Je ne connais qu'un cas où on ne peut éviter de sélectionner, c'est si l'on veut regrouper toutes les formes de la feuille en les affectant à un objet ShapeRange, dans ce cas on est obligé de passer par la sélection de tous les objets de la feuille avec la méthode SelectAll de la collection Shapes pour pouvoir affecter, tout autre moyen sans cette sélection génère une erreur...

Ah oui tu fais quelque chose comme ça?

Set forme = add [...]
forme. [...]

Je n'utilise jamais de Set, ça me file des boutons, il faudra peut-être que je m'y mette

Merci pour vos réponses et bonne continuation sur le forum!

Rechercher des sujets similaires à "comment selectionner photo interieur case"