Trouver une shape dans un classeur

Bonjour,

J'ai trouvé sur internet ce code mais je n'arrive pas à le faire fonctionner

Sub FindShape()
Dim sht As Worksheet
Dim shp As Shape
For Each sht In ActiveWorkbook.Worksheets
    For Each shp In sht.Shapes
        If shp.TextFrame.Characters.Text = Worksheets("Plan-1").Range("BH4").Value Then
            sht.Activate
            shp.Select
            ActiveWindow.ScrollRow = shp.TopLeftCell.Row
            ActiveWindow.ScrollColumn = shp.TopLeftCell.Column
            Exit Sub
        End If
    Next shp
Next sht
End Sub

J'ai une erreur au niveau de la ligne "If shp.TextFrame.Characters.Text = Worksheets("Plan-1").Range("BH4").Value Then"

En gros je recherche dans mon classeur la shape qui à la valeur de la cellule BH4 de la feuille "Plan-1"

Ma cellule BH4 contient la lettre A et j'ai bien une shape contenant le texte "A".

Je n'arrive pas à trouver d'où vient l'erreur...

Bonjour,

Un essai.

28thehappypop.xlsm (26.13 Ko)

Bonjour,

Merci pour ton aide !

Alors effectivement ça fonctionne sur ton fichier mais dès que je copie le code sur le mien ça ne fonctionne plus

J'ai simplement changé la cellule "BH4"

Le code plante à l'endroit surligné en jaune. Une idée ?

test

Re,

Que veux tu que je te dise de plus?

Envoie ton fichier.

Cdlt.

Le fichier est trop volumineux tu le trouveras sur ce lien !

A l'ouverture clique sur "annuler" sur la Msbox.

le code se trouve dans le module 4

(ne fait pas attention à tous les autres codes, c'est en chantier )

Merci !

Re,

Ôte la protection VBA?

Oh pardon !

MILO

c'est le mdp

Rechercher des sujets similaires à "trouver shape classeur"