Rechercher la présence d'un mot sous VBA avec FIND

Bonjour à tous,

J'essaye en vain de faire marcher une macro SUB avec FIND. J'ai une liste de 40 entreprises et je veux faire apparaitre au debut une inputbox qui demande de saisir le nom de l'entreprise en question et renvoyer une msgbox avec un certain message si l'entreprise se trouve bien dans la plage de données et un autre si ce n'est pas le cas. Le problème c'est que parfois je test avec un nom qui n'est pas dans la liste et ca me renvoie quand même ma msgbox correspondante au message qui doit s'afficher quand l'entreprise existe bien !

Je ne comprends pas ce que j'ai mal fait. Quelqu'un a-t'il une solution svp ?

Par avance merci.

voici mon code :

Option Explicit

Sub TrouverEntreprise()
Dim entreprise As String
Dim c As Range

entreprise = InputBox("Veuillez saisir le nom de la société dans laquelle vous souhaitez investir svp", "COMPOSITION DE NOTRE FONDS")

With Worksheets(1).Range("B4:B43")

Set c = .Find(entreprise)
If Not c Is Nothing Then
MsgBox ("Désolé, la société dans laquelle vous voulez investir ne fait pas partie de notre fonds.")
Else
MsgBox ("La société dans laquelle vous souhaitez investir se trouve bien dans notre fonds.")
End If
End With

End Sub

Bonjour,

Afin de pouvoir optimiser ta demande, tu devrais mettre le code entre balises </> conformément à la charte

Et concernant ta demande, l'instruction "Find" comporte plusieurs arguments, dont la recherche exacte...

Set C = .Find(entreprise, LookAt:=xlWhole)

Peut-être?

Bonjour

Pensez à faire une petite présentation de vous ici https://forum.excel-pratique.com/presentations

Merci d'utiliser les balises de codes disponibles en cliquant sur l'icone </> dans la barre de menu et en collant votre code dans la fenêtre. ce sera plus lisible pour celui qui vous répond

Par rapport à votre souci, vous veillez à respecter les majuscules et minuscules ?
Ensuite vous devez inverser les deux Msgbox

Crdlt

Edit : oups cousinhub je n'avais pas vérifié que tu avais posté . Je supprime ce que tu as déjà écrit. Pour le reste c'est complémentaire

Merci Dan et cousinhub. J'ai inséré mon code comme vous me l'avez recommandé et fait ma présentation !

Comme Dan me l'a conseillé j'ai inversé mes deux msgbox et maintenant ca marche alors MERCI mais le problème c'est que par exemple pour la société Carrefour si je tape seulement Carref dans mon inputbox ca va me dire que la société est bien présente. Vous avez une solution ?

En fait c'est bon merci !! j'ai trouvé, il fallait utiliser

LookAt:=xlWhole

Merci a vous deux !

Rechercher des sujets similaires à "rechercher presence mot vba find"