Rechercher la ligne d'un Nème doublon

Résolu/Fermé
-
 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

Messages postés
13352
Date d'inscription
mercredi 16 janvier 2013
Statut
Membre
Dernière intervention
26 janvier 2022
2 328
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

merci, au top