Trouver le numéro de ligne d'une cellule [Résolu]

Signaler
Messages postés
32
Date d'inscription
mardi 27 novembre 2007
Statut
Membre
Dernière intervention
13 novembre 2017
-
Messages postés
1835
Date d'inscription
vendredi 13 mai 2005
Statut
Membre
Dernière intervention
20 novembre 2013
-
bonjour à tous!
j'ai besoin d'un léger coup de main:
Dim NextDay As Date
NextDay = Application.WorksheetFunction.VLookup(Range("V2"), Range("A:A"), 1, 0)

comment puis-je obtenir le numéro de la ligne où s'arrete le vlookup?

Merci d'avance

1 réponse

Messages postés
1835
Date d'inscription
vendredi 13 mai 2005
Statut
Membre
Dernière intervention
20 novembre 2013
9
Salut,

en utilisant la methode find. Voici un exemple.


Dim MaCellule As Range


Set MaCellule = Columns("A").Find(Range("V2").Value, , xlValues, , xlByRows, xlPrevious)


MsgBox "Valeur trouvée: " & MaCellule.Value

MsgBox "Adresse de la valeur trouvée: " & MaCellule.Address

MsgBox "Ligne de la valeur trouvée: " & MaCellule.Row

MsgBox "Colonne de la valeur trouvée: " & MaCellule.Column


etc

Mais attention avec cette methode tu auras un message d'erreur (erreur 91 je crois...) si la valeur recherchée n'a pas été trouvée.
Pour contourner l'erreur il suffit de faire comme suit.

Dim MaCellule As Range



On Local Error Resume Next
Set MaCellule = Columns("A").Find(Range("V2").Value, , xlValues, , xlByRows, xlPrevious)


If Not Err = 0 then
   

MsgBox "Ligne de la valeur trouvée: " & MaCellule.Row
Else
   Msgbox "La valeur recherchée n'a pu etre trouvée sur la plage spécifié"
End If