Recherche de valeur dans liste d'arguments

Résolu/Fermé
Nimsir Messages postés 53 Date d'inscription dimanche 5 octobre 2008 Statut Membre Dernière intervention 11 juillet 2012 - 11 janv. 2010 à 12:42
Nimsir Messages postés 53 Date d'inscription dimanche 5 octobre 2008 Statut Membre Dernière intervention 11 juillet 2012 - 20 janv. 2010 à 14:18
Bonjour,

Tout d'abord, une bonne et heureuse année 2010 à toutes et à tous ;-)

Ensuite, mon problème...

J'ai une feuille excel avec différentes valeurs... J'aimerai une formule qui me rendre un "TRUE" si cette une valeur est présente dans une liste d'arguments, et "FALSE" si elle ne l'est pas.

Donc en admettant que dans A1 j'ai une valeur "papa" et que de C1 à C5 j'ai "soeur, frère, maman, chien, chat, poisson rouge", j'aimerai que dans B1 il me mette un FALSE (car pas dans la liste) et un "TRUE" si cela avait été "chien" par exemple dans A1... Vous me suivez ? ^^
D'autre part, il faudrait que cela respecte la casse. Il devrait me renvoyer "TRUE" quand "chien" se trouve dans la liste, mais "FALSE" quand "Chien" se trouve dans la liste... idem pour "chienne" (FALSE), ...

A vi, tout ça en sachant que j'ai excel en anglais :-)

Merci d'avance pour l'aide que vous pourrez me fournir !

Bonne journée,
Nim
A voir également:

26 réponses

eriiic Messages postés 24570 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 23 avril 2024 7 216
20 janv. 2010 à 10:52
Bonjour tout le monde,

Si j'ai bien suivi, ça pourrait être fait par formule si tu inscris (ou concatène) tous les mots dans une même cellule.
D'autre part : dès lors il mettra "Test JDG" ou "test jdg"
Pourquoi s'embeter avec la casse alors ?
Je t'ai fait les 2 cas : trouve() tient compte de la casse, chercher() n'en tient pas compte.

Sous forme de fichier que tu aies la traduction : nimsir.xls

eric
0
Nimsir Messages postés 53 Date d'inscription dimanche 5 octobre 2008 Statut Membre Dernière intervention 11 juillet 2012 13
20 janv. 2010 à 10:55
Moui, c'est un peu gênant que ça dure aussi longtemps... Je tentais justement d'automatiser tout ça pour que ça aille plus vite. Car tout faire à la main...

En ce qui concerne le code, j'ai mis celui que tu m'as passé... à savoir:

Sub test()
Dim cel As Range
Dim derlig As Integer, j As Integer, numlig As Integer
derlig = Sheets("Datas").Range("A65536").End(xlUp).Row
numlig = Sheets("Test List").Range("A65536").End(xlUp).Row
With Worksheets("Test List")
For j = 7 To derlig
For Each cel In .Range("A1:A" & numlig)
If cel.Value Like Range("D" & j).Value Then
Range("I" & j) = 0
GoTo suivant
Else
If Range("C" & j) = "" Then
Range("I" & j) = 0
Else
Range("I" & j) = 1
End If
End If
Next cel
suivant:
Next j
End With
End Sub

EDIT: Bon, ça semble fonctionner.

Mais ça dur trop trop longtemps... j'ai 471 ligne à vérifier rien que pour hier... dans quelques jours je vais devoir vérifier pour tous le mois de janvier... ça va être galère.... non faisable...
0
eriiic Messages postés 24570 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 23 avril 2024 7 216
20 janv. 2010 à 11:11
On s'est croisés, pas sûr que tu aies vu mon post 21...
0
pijaku Messages postés 12263 Date d'inscription jeudi 15 mai 2008 Statut Modérateur Dernière intervention 4 janvier 2024 2 745
20 janv. 2010 à 11:18
Salut Eriic,
Il est vrai également qu'une bonne formule est préférable à une mauvaise macro.
Bonne journée
0
eriiic Messages postés 24570 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 23 avril 2024 7 216
20 janv. 2010 à 11:30
De toute façon ta 1ère réponse devait répondre au problème si on ne tiens pas compte de la casse (et je ne vois pas l'interet d'en tenir compte)
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Nimsir Messages postés 53 Date d'inscription dimanche 5 octobre 2008 Statut Membre Dernière intervention 11 juillet 2012 13
20 janv. 2010 à 13:00
Merci eriic, il semble que ce soit ce bon :-)

Je vais tester ça plus amplement dans un proche avenir. Mais je dirais à première vue que c'est ok.

Et bien sûr un grand merci à pijaku de s'être penché longuement sur mon cas !

Je vais mettre le topic en résolu, mais gardez-le à l'oeil un p'tit temps... on sait jamais ;-)

Encore un tout grand merci !

Et pour te répondre, eriic, pourquoi faire attention à la casse ? Afin que ce soit précis. Aucune mauvaise surprise, on sait jamais.

Allez, bonne journée ;-)
0
eriiic Messages postés 24570 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 23 avril 2024 7 216
20 janv. 2010 à 13:15
faudrait vraiment tomber sur un vicieux qui écrive tEst jDg et que ce ne soit pas un test de chez toi non ? ;-)
0
Nimsir Messages postés 53 Date d'inscription dimanche 5 octobre 2008 Statut Membre Dernière intervention 11 juillet 2012 13
20 janv. 2010 à 14:18
Tu serais étonné haha :p

De toute manière en admettant même que ce soit quelqu'un d'extérieur, moi je peux pas le savoir donc je le rajoute à la liste. C'est juste histoire d'être sûr :-)
0