Fonction FIND
Résolu
dj_fifi
-
ed555 Messages postés 61 Date d'inscription Statut Membre Dernière intervention -
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.
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.
2 réponses
-
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 -
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