Essayer de faire fonctionner .Find

J'essaie depuis 1h à faire marcher ce bout de code mais je n'arrive à rien...

Je souhaite simplement faire une recherche d'une variable dans une plage de cellule donnée pour que celle-ci me retourne la colonne de la valeur recherché sachant que le résultat ne peut être nul

Je me demande alors si c'est la bonne méthode pour exécuter ce genre d'action ou comment faire marcher cette foutu fonction ? XD

Je vous remercie pour votre aide

Sub testadress()

Dim c As Range
Dim Valeur As String

Valeur = 36
Set c = Sheets("DATA").Range("A4:ZZZ4").Find(Valeur, LookIn:=xlValues, lookat:=xlWhole)

MsgBox c.Column

End Sub

Salut Cepafau (faut voir... ),

Tu oublies sans doute le What:= ... peut-être..., sans fichier et de tête, ainsi...

Sub testadress()

Dim c As Range
Dim Valeur As String

Valeur = 36
Set c = Worksheets("DATA").Range("A4:ZZZ4").Find(What:=Valeur, LookIn:=xlValues, lookat:=xlWhole)

MsgBox c.Column

End Sub

À tester, comme toujours quand il n'y a pas de fichier...


A+

Bonsoir,

la colonne ZZZ n'existe pas ! colonne max XFD !

@ bientôt

LouReeD

Trop fort, LouReed!
Pas capté de chez pas capté ce truc idiot...


A+

cepafau !

Je suis parti au début sur le truc que Find cherche une valeur mais que si celle-ci était issue d'une formule puis ...Mais qu'est-ce que c'est que ce ZZZ ?

@ bientôt

LouReeD

Bien joué effectivement je n'avais pas cette info.

désolé, c'est compliquer de fournir l'excel en l'état :/

J'essaie une truc, je vois si cela marche

Le change ZZZ a permis de corriger généré par le .Find

Mais, je ne comprend pas, j'ai une erreur erreur d'exécution '91' variable objet ou variable bloc with non définie sur le MsgBox

Je recherche, si vous avez une idée ?

Nous n'avons pas de boule de cristal... enfin, LouReed, peut-être, oui...

Cette erreur est du au faite que C = Nothing, donc comme votre recherche se fait sur la ligne 4, il n'y a pas de valeur en ligne 4...

Pour éviter ce genre d'erreur faites un test sur C : If Not C Is Nothing Then MsgBox C.Column

@ bientôt

LouReeD

Effectivement, j'ai trouvé la solution en meme temps

Par comprendre, il faut que je comprenne pourquoi il l'a trouve pas XD

Sub rechercher()

Dim c As Range
Dim Valeur As Integer

Valeur = 2020
Set c = Worksheets("DATA").Range("A4:FFF4").Find(What:=Valeur)

If c Is Nothing Then
MsgBox "rien trouver"
Else
MsgBox c.Address
End If

End Sub

parce qu'elle n'existe pas en ligne 4, ou bien elle y est mais en "lettres" (aligné à gauche par défaut dans la cellule) je ne sait et je rejoins donc curulis57 pour le fichier

@ bientôt

LouReeD

J'étais un peu paresseux, mais j'aimerai bien comprendre une bonne fois pour toute

En gros je veux déterminer dans quel colonne de la feuille DATA, je doit travailler pour intégrer les données de la feuille Annexe_DATA correspondante.

Dans ma feuille Annexe_DATA j'ai les données en L2 et M2 qui me donne le mois et l'année des données

Et du coup je veux me servir de find pour déterminer une plage de colonne par rapport à l'année et dans l'idée l'utilisation d'un deuxième Find pour le mois et avoir au final la coordonné de la colonne ou copier les données.

7find.xlsm (87.43 Ko)

Je suis un peu embêter de donner cela comme réponse mais je viens de redémarrer excel et cela marche maintenant, j'ai bien le bon retour de valeur .....

mieux vaut tard que jamais ! Ceci dit tout cela n'est pas vain, vous aurez appris qu'il y a XFD colonnes et pas plus !

@ bientôt

LouReeD

ouep, désolé du dérangement

Bonsoir,

pas de soucis ! Merci pour ces retours et remerciements !

@ bientôt

LouReeD

Rechercher des sujets similaires à "essayer fonctionner find"