Obtenir n° ligne dans une adresse

Bonjour à tous,

J'ai trouvé un code qui me correspondait et que j'ai modifié pour répondre à mes besoins.

Je l'ai adapté de telle façon :

Function chercher(NomProduit$, NumTesteur$, JourTest)
Dim c As Range, adres As String
With Worksheets("STOCKAGE").Range("A:A")
    Set c = .Find(NomProduit, LookIn:=xlValues)
    If Not c Is Nothing Then
        adres = c.Address 'Le nom a été trouvé
        Do
            'Vérifie que le prénom et l'adresse correspondent bien
            If UCase(c.Offset(0, 1)) = UCase(NumTesteur) And UCase(c.Offset(0, 5)) = UCase(JourTest) Then 'la bonne ligne a été trouvé
                 chercher = c.Address(0, 0) 'retourne l'adresse à la procédure Appel
                 Exit Do
            End If
            Set c = .FindNext(c) 'Le prénom ou/et l'adresse ne correspondent pas, la recherche continue
        Loop While Not c Is Nothing And c.Address <> adres
    End If
End With
End Function

Sub Appel()
Dim NomProduit$, NumTesteur$, JourTest$, Ladresse$
    NomProduit = "Pyram.aop valencay lc 22% 220g"
    NumTesteur = 1
    JourTest = 12
    Ladresse = chercher(NomProduit, NumTesteur, JourTest)
    MsgBox Ladresse 'pour tester
    c.adress(0, 0).Select
End Sub

Mon seul problème est que je ne veux pas du msgbox Ladresse mais je cherche à récupérer le numéro de la ligne et pouvoir travailler dessus.

Je remercie toute personne pouvant m'aider

Merci d'avance

Cordialement

Bonjour,

Essaie ceci :

c.row

Bonjour,

Function chercher(NomProduit$, NumTesteur$, JourTest)
Dim c As Range, adres As String
With Worksheets("STOCKAGE").Range("A:A")
    Set c = .Find(NomProduit, LookIn:=xlValues)
    If Not c Is Nothing Then
        adres = c.Address 'Le nom a été trouvé
        Do
            'Vérifie que le prénom et l'adresse correspondent bien
            If UCase(c.Offset(0, 1)) = UCase(NumTesteur) And UCase(c.Offset(0, 5)) = UCase(JourTest) Then 'la bonne ligne a été trouvé
                 chercher = c.row 'retourne la  ligne à la procédure Appel
                 Exit Do
            End If
            Set c = .FindNext(c) 'Le prénom ou/et l'adresse ne correspondent pas, la recherche continue
        Loop While Not c Is Nothing And c.Address <> adres
    End If
End With
End Function

Sub Appel()
    Dim NomProduit$, NumTesteur$, JourTest$, Ligne as long

    NomProduit = "Pyram.aop valencay lc 22% 220g"
    NumTesteur = 1
    JourTest = 12
    Ligne = chercher(NomProduit, NumTesteur, JourTest)

End Sub

Bonjour Jean-Eric,

Merci pour ta réponse.

En effet, ça marche! Merci beaucoup!

Cordialement

Rechercher des sujets similaires à "obtenir ligne adresse"