Fonction .Find

Bonjour le forum,

J'ai un problème avec l'utilisation de la fonction .Find.

En effet j'utilise un numéro pour un classement et j'utilise une recherche de ce numéro pour obtenir la ligne.

Private Sub MB_Transfert_Click()
Transfert = ML_Utilisateur.Value
MsgBox Transfert

With Worksheets("Feuille1").Columns(1)
Dim Find As Range
Set Find = .Find(Transfert)
    If Not Find Is Nothing Then
            NumLigne = Find.Row
            MsgBox NumeroLigne
            DoEvents
    End If
End With
End Sub

Le problème viens du fait que si par exemple Transfert = 2

Le .Find va chercher un 2 et ensuite s'arrête, si j'ai donc un 22 avant la ligne du 2 il va s'arrêter avant sur la ligne du 22 !

Des idées ?

Cordialement

Ice

Bonjour,

Essaie :

Private Sub MB_Transfert_Click()
Transfert = ML_Utilisateur.Value
MsgBox Transfert

With Worksheets("Feuille1").Columns(1)
Dim Find As Range
Set Find = .Find(What:=Transfert, lookin:=xlValues, lookat:=xlWhole)
    If Not Find Is Nothing Then
            NumLigne = Find.Row
            MsgBox NumeroLigne
            DoEvents
    End If
End With
End Sub

Bonjour,

Rapide, précis, efficace.

Merci Jean-Eric

Cordialement

Ice

ça ne marchera pas si Worksheets("Feuille1").Columns(1) contient des formules au lieu de valeurs codées en dur et si ces cellules sont formattées avec #'##0 ou autre... Dans ce cas chercher avec find() un nombre tel que 1200 ne marchera pas!

Rechercher des sujets similaires à "fonction find"