Recherche Macro VBA ou formule - fonction pour Classement suite à un tirage

Bonjour,
J'ai à classer des offres de prix pour plusieurs produits. le fichier ci-joint illutre la situation :

Onglet "Feuil1" :

- la colonne A représente les produits (3 dans cet exemple mais en réalité il y a une centaine)

-La colonne B les offres reçues et la colonne C les prix correspandant

- La colonne D: Classement au début, il s'agit d'un tri croissant des prix pour chaque produit: Produit A les rangs sont de 1 à 46, pour le produit B les rangs sont de 1 à 64...etc

suite à ce classement, nous constatons qu'il y a des offres avec le même prix..dans ce cas on procède à un tirage dont le résultat est donné à la colonne E. pour les offres unique on donne arbitrairement un chiffre 0 et nous allons dire pourquoi dans ce qui suit.

- La colonne F on établit le classement finale:

- pour les offres égales on ajoute le chiffre correspondant au classemnt initiale au chiffre ou rang obtenu par tirage
- pour les offres uniques le classement reste le même d'où lIntérêt de mettre 0 précédemment et mettre ce classement finale = classement initiale + rang de tirage

donc grosso-modo chaque cellule de la colonne F est la somme de la celulle de même ligne de la colonne D + colonne E

cette façon marche très bien sauf lorsque les offres de même prix sont suivis par d'autres offres de prix égaux mais qui est différent du prix des premiers exemple ligne 79 et 80. dans ce cas il faut reclasser manuellemt les offres ce qui est très fastidieux pour un fichier de 55.000 lignes!!!

Le tableau à droite de la feuil 1 montre les résultats corrigés (colonne P)

Ma question est la suivante: existe il une fonction/formule ou une solution en VBA pour classer correctement ces offres?
Merci infiniment pour votre support!

3classement.xlsx (23.42 Ko)

bonjour kasper2004,

on ajoute une valeur aléatoire très petit (ici une valeur entre 0 et 0,00999999999 dans la colonne D, je n'étais pas sûr mais vos prix ils sont integer ou avec de centiemes ?). Puis on a le classement dans la colonne E.

7classement-2.xlsx (34.11 Ko)

Merci Bart,
je savais pas que c'est aussi simple que ça
Problème résolu..Merci

Rechercher des sujets similaires à "recherche macro vba formule fonction classement suite tirage"