Recherche par mot clé dans les Formes Excel

Bonjour,

j'aimerais trouver le moyen de faire une recherche par mot clé dans des commentaires écrits dans un ensemble de "Formes" qu'on peut créer par l'outil "Dessin" de Excel. Merci par avance pour toute aide.

bonjour,

une réponse via une macro, à adapter (mot à chercher, nom de la feuille, instructions à exécuter quand le mot est trouvé)

Sub test_fring()

mot = "test"
For Each Sh In Sheets("sheet1").Shapes
    If InStr(Sh.TextFrame.Characters.Text, mot) <> 0 Then
     ctr = ctr + 1
    End If
Next
 MsgBox "mot " & mot & " trouvé " & ctr & " fois"
End Sub

Bonjour h2so4,

je ne suis pas un expert en macro qui si j'ai bien compris sert à automatiser un ensemble de commandes unitaires sous Excel. Quel serait donc l'enchainement des commandes unitaires correspondant à ta macro?

Depuis que j'ai posté ma question j'ai fait quelques essais en créant des formes dans lesquelles je tape du texte, et je parviens à répondre à ma question par "CTRL + F" dans Word, mais toujours pas dans Excel. Peut-être que je passe à coté de quelque chose?

Merci par avance pour ton aide.

Bonjour,

je ne pense pas que cette fonction de recherche soit accessible via des fonctions standard d'Excel. D'où la proposition via programmation vba.

merci mais je suis désolé de ne pas maitriser Visual Basic

bonjour,

pour utiliser la macro

1) l'installer

copier le code du forum

aller dans excel

faire alt-F11 pour activer l'éditeur VBa

menu >insérer> module

coller le code

remplacer le mot feuil1 par le nom de la feuille dans laquelle il faut faire la recherche

faire alt-F11 pour revenir dans les feuilles excel

2) la lancer

faire alt-F8 pour lancer la macro

j'ai installé la macro dans mon classeur, changé le mot "test" par le mot que je recherche, j'ai aussi renseigné le nom de ma page Excel, et à l'exécution de la macro j'obtiens une "erreur d'exécution 438" qui semble attribuée à la 4ème ligne de la macro.

Désolé mais je ne sais pas interpreter cela.

Bonjour,

essaie ce code modifié

Sub test_fring()

mot = "test"
For Each Sh In Sheets("sheet1").Shapes
q=0
on error resume next
q= InStr(Sh.TextFrame.Characters.Text, mot) 
    If q<> 0 Then
     ctr = ctr + 1
    End If
Next
 MsgBox "mot " & mot & " trouvé " & ctr & " fois"
End Sub
Rechercher des sujets similaires à "recherche mot cle formes"