Rechercher la ligne d'un Nème doublon

Résolu
rey wolfheart -  
 rey wolfheart -
Bonjour,
dans l'exemple si dessous,

A B
___________
8 1
10 2
4 8
8 5
8 8
8 20

j'aimerai trouver une fonction comme suit :

=fonction(valeur à rechercher ; tableau ; nombres d'apparitions)

exemple :

=fonction(B3;A:A;3)

renvoi la valeur 5, la valeur 5 correspond au numéro de la ligne dans la colonne A avec la valeur B3 (c'est à dire "8") qui apparait pour la (Xème fois) 3ème fois dans cette colonne.

merci, à tous

1 réponse

  1. via55 Messages postés 14393 Date d'inscription   Statut Membre Dernière intervention   2 759
     
    Bonjour

    Essaie ceci comme fonction personnalisée
    :
    Function nieme(cherché As Range, plage As Range, nbapp As Integer)
    result = "non trouvé"
    'adresse colonne choisie
    a = plage.Address
    'lettre de la colonne choisie
    col = Left(a, Application.WorksheetFunction.Search(":", a) - 1)
    Dim derligne As Long
    'dernière ligne remplie de la colonne choisie
    derligne = Range(a).Find("*", , , , xlByColumns, xlPrevious).Row
    
    ' Boucle jusqu'à ce que n° de ligne=derligne ou que le nbre dd'apparitions est atteint
    Do Until nl = derligne Or x = nbapp
    'incrementation n° de ligne
    nl = nl + 1
    ' si valeur en colonne chosie=valeur cherchée incrémentation de x de 1
    If Range(col & nl) = cherché.Value Then x = x + 1
    'si x=nbre apparitions recherché, result= N° de ligne
    If x = nbapp Then result = nl
    Loop
    
    'retour du resultat
    nieme = result
    End Function


    Cdlmnt
    Via
    0
    1. rey wolfheart
       
      merci, au top
      0