Fonction FIND

Résolu
dj_fifi -  
ed555 Messages postés 61 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

Pour éviter qu'on ne comprenne mal ce que je veux, je vais faire simple.
Dans une feuille excel dans une colonne il y a plusieurs NOM.
Pour faire simple je vais mettre 3 NOM
Voiture, Avion, Bateau.

En vba si je recherche un des trois mot ça fonction, mais si dans ma variante je recherche "Vélo" logique il ne trouve pas, mais j'ai le problème suivant la macro ce met en défaut "91"

Plus je cherche moins je comprends.

voici un des codes que j'ai fait.

donnée = "vélo"
Sheets("MAQUETTE").Select
y = [b1:b80].Find(What:=donnée, LookIn:=xlFormulas, LookAt:=xlPart, SearchOrder:=xlByColumns).Adress
If y = donnée Then
Sheets("MAQUETTE").Range("A6").Select
Else
Sheets("MAQUETTE").Range("A1").Select
End If
End Sub

Si je marque dans donnée = "Avion" c'est bon ça fonctionne vu qu'il est dans la liste, mais si je marque Vélo le y est vide est le programme bloque sur la ligne

y = [b1:b80].Find(What:=donnée, LookIn:=xlFormulas, LookAt:=xlPart,
SearchOrder:=xlByColumns).Adress


En résumé, je recherche, si un mot existe dans une colonne faire telle action, si elle existe pas faire autre chose.

A voir également:

2 réponses

ed555 Messages postés 61 Date d'inscription   Statut Membre Dernière intervention  
 
salut,


et si tu mettais un "on error goto Blabla" ?

dans le code tu rajoutes alors à l'endroit que tu veux (probablement après ta recherche du coup):

Blabla:

'la suite du code
0
michel_m Messages postés 16602 Date d'inscription   Statut Contributeur Dernière intervention   3 314
 
Bonjour,

pour tester si la donnée est dans la zone de recherche

If application.countif(zonederecherche,données>0 then
  tes actions
else 
  message d'erreur
end if
0
ed555 Messages postés 61 Date d'inscription   Statut Membre Dernière intervention  
 
effectivement, c'est bien plus élégant comme ça !
je me doutais qu'il y avait une condition du genre mais je ne savais pas laquelle, merci michel_m !
0