Référence erronée lors d'un MIN/MAX avec doublon dans le tableau

Bonjour a tous,

Après plusieurs heures de recherches je fais face à un problème. Je suis incapable de trouver une formule qui me permet de trouver la référence d'un min/max (min en l'occurrence). Dans ma colonne il y a un minimum sur une plage non continue (voir exemple) et je n'arrive pas a trouver de solution qui me permettrait de passer outre les doublons qui ne sont pas dans la plage du min car si je ne me trompe pas la fonction INDEX cherche une valeur sur des plages continue et prend en conséquence un doublon qui arrive avant l'occurrence où j'aimerai avoir la référence.

Je cherche donc une solution pour prendre en compte uniquement la plage discontinue de mon MIN lorsque je cherche une ref. Ou avoir un moyen d'obtenir la ligne d'un minimum sur une plage non continue.

Merci d'avance a tous pour votre aide future

PS: J'ai ajouté un exemple pour que ce soit plus lisible

17exemple-excel.xlsx (10.02 Ko)

Bonjour,

Avec une fonction personnalisée:

La formule à saisir: =RecupAdr(C4;C6;C8;C9;C11)

Cdlt

Merci beaucoup Arturo83, ca marche top. Cependant j'ai peut etre un peu de mal a acceder a la fonction pour la coller sur mon excel de base.

Pourriez vous me rediriger vers un tutoriel?

Merci beaucoup encore :)

Pour récupérer le code, faire ALT + F11, sélectionnez le code et copiez.

Dans votre fichier, faire ALT + F11 et dans la fenêtre de droite , collez-y le code.

Ensuite, sur votre feuille excel, saisissez la formule dans la cellule de votre choix comme indiqué auparavant, en ne sélectionnant que les cellules à prendre compte tout simplement.

Cdlt

Super merci pour l'indication.

Cependant la fonction à du mal avec les cellules vides et m'affiche #VALEUR !. Quelle ligne est à ajouter pour ignorer les cellules vides ?

Merci encore.

Bien cordialement

Bonsoir,

Function RecupAdr(ParamArray Plage()) As Variant
    LeMin = Application.WorksheetFunction.Min(Plage)
    For Each cell In Plage
        If cell <> "" Then
            If cell = LeMin Then
                RecupAdr = cell.Address
                Exit Function
            End If
        End If
    Next
End Function

Cdlt

Bonjour Arturo83,

La fonction semble bonne et pourtant ne marche pas. Si j'ajoute dans votre Excel la cellule C13 a RecupAdr. Donnant "RecupAdr(C4;C6;C8;C9;C11;C13)" cela donne toujours "'#VALEUR!".

Merci d'avance pour votre aide.

Bien cordialement,

Bonjour,

Bizarre, ça marche bien chez moi, seul petite modif à faire, vu que les données ne sont pas forcément triées, il faut supprimez le "Exit function".

Malheureusement je me suis trompé sur la cellule. Je pensais plus a une cellule vide comme la C15 .

Les cellules vides me renvoie toujours l'erreur.

Merci pour votre aide :)

Pas compris, pourriez-vous mettre un bout de fichier que je regarde de plus près?

Donc en gros la cellule vide "hors" du tableau fait crash la fonction on dirait. C'est la meme chose si dans la colonne ou je fais mes calculs il y a une cellule sans rien dedans

Merci :)

8mffxudcs0n.xlsm (14.93 Ko)

D'où l'importance de bien décrire le problème avec tous les cas possibles rencontrés.

Le nouveau code

Function RecupAdr(ParamArray Plage() As Variant) As Variant
    Valmin = 9 ^ 9
    For Each cell In Plage
        If cell <= Valmin And cell <> "" Then
            Valmin = cell
            RecupAdr = cell.Address
        End If
    Next
End Function

Cdlt

Ok super c'est bon,

Merci encore :)

Rechercher des sujets similaires à "reference erronee lors min max doublon tableau"