Ajouter une valeur si la valeur est la plus haute

Bonjour,

Je souhaiterai faire en sorte que si la valeur de ma colonne est la plus haute ajouter une valeur à celle-ci.

excel 1

Par Exemple : La valeur la plus haute est 40 565 je souhaiterai ajouter 6000 dans la colonne de droite : 16 065 + 6000
La Deuxieme Valeur la plus haute 29 625 je souhaiterai ajouter 4000 dans la colonne de droite : 1 125 + 4000
La Troisieme Valeur la plus haute 21 638 je souhaiterai ajouter 2000 dans la colonne de droite : 5 063 + 2000
Mais je souhaiterai que ca détecte automatiquement :
Si 1ere valeur + haute ajouter 6000
Si 2eme Valeur + haute ajouter 4000
Si 3eme Valeur + haute ajouter 2000

Quel serait la formule la plus simple à mettre pour détecter cela ?
Merci d'avance pour vos réponses

Bonjour et bienvenue ...

Pas facile de travailler sur une image, un lien vers ton fichier serait plus approprié.

Proposition (paramètres régionaux Suisse)

image

Bonjour,

en masquant la colonne B

en Colonne C2 par exemple

=SI(RECHERCHEV(GRANDE.VALEUR($A$2:$A$17;1);$A$2:$B$17;2;FAUX)=B2;RECHERCHEV(GRANDE.VALEUR($A$2:$A$17;1);$A$2:$B$17;2;FAUX)+6000;SI(RECHERCHEV(GRANDE.VALEUR($A$2:$A$17;2);$A$2:$B$17;2;FAUX)=B2;RECHERCHEV(GRANDE.VALEUR($A$2:$A$17;2);$A$2:$B$17;2;FAUX)+4000;SI(RECHERCHEV(GRANDE.VALEUR($A$2:$A$17;3);$A$2:$B$17;2;FAUX)=B2;RECHERCHEV(GRANDE.VALEUR($A$2:$A$17;3);$A$2:$B$17;2;FAUX)+2000;B2)))

et tirer vers le bas

20210808 102906 001

peut-être plus simple ...

=B1+
if(rank(A1, $A$1:$A$15,false)=1,6000,
if(rank(A1, $A$1:$A$15,false)=2,4000,
if(rank(A1, $A$1:$A$15,false)=3,2000,
0)))

le problème est néanmoins de partager les ex-aequo !

Dans le cas de la fonction LARGE qu'utilise Gilbert, si il y a 2 ex-aequo premiers, alors il y aura 4 valeurs 6000-6000-4000-2000

Dans le cas de la fonction RANK que j'utilise, si il y a 2 ex-aequo premiers, alors il y aura 3 valeurs 6000-6000-2000

Nota : n'ayant pas eu de fichier, je suis resté dans ma version avec langue anglaise et notation CH.

j'avais oublié la formule magique

=ArrayFormula(SI(RECHERCHEV(GRANDE.VALEUR($A$2:$A$17;1);$A$2:$B$17;2;FAUX)=B2:B17;RECHERCHEV(GRANDE.VALEUR($A$2:$A$17;1);$A$2:$B$17;2;FAUX)+6000;SI(RECHERCHEV(GRANDE.VALEUR($A$2:$A$17;2);$A$2:$B$17;2;FAUX)=B2:B17;RECHERCHEV(GRANDE.VALEUR($A$2:$A$17;2);$A$2:$B$17;2;FAUX)+4000;SI(RECHERCHEV(GRANDE.VALEUR($A$2:$A$17;3);$A$2:$B$17;2;FAUX)=B2:B17;RECHERCHEV(GRANDE.VALEUR($A$2:$A$17;3);$A$2:$B$17;2;FAUX)+2000;B2:B17))))

https://docs.google.com/spreadsheets/d/1tUpKVK1tCJac9LDc_SRHp2GQge3_aJF9h4jofj_LnQA/edit?usp=sharing

j'ai ajouté sur le fichier la formule à Mike avec arrayformula

Bonjour,

Excusez moi pour le temps de réponse voici le dossier G'Sheet ou je demande votre aide sachant que je ne ajouter de colonne pour faire en plusieurs étape

https://docs.google.com/spreadsheets/d/1vcuZIHTUOAIvEABkhiTLGrmhFzantnKJc-MUSxi11Vo/edit?usp=sharing

peux-tu préciser cette phrase ?

je ne ajouter de colonne pour faire en plusieurs étape

Oui pas de soucis je ne peux rajouter de colonne entre la colonne B et C

Si tu ne peux pas ajouter de colonne, sachant qu'une formule ne peut pas prendre sa propre valeur et l'incrémenter, alors c'est un script ... et sans modification possible ultérieure des données (*). Je trouve cela peu orthodoxe !

(*) quoique une solution serait de mémoriser le rang dans un commentaire.

Est-ce que les colonnes D et E de ton fichier sont elles acceptables ?

A ne lancer qu'une seule fois sinon les primes se multiplieront !

function calculPrime() {
  var f = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet()
  var valeurs = f.getRange('A3:B18').getValues()
  var primes = f.getRange('D2:E4').getValues()
  for (var i=0;i<valeurs.length;i++){
    if (valeurs[i][0]==primes[0][0]){valeurs[i][1]+=primes[0][1]}
    if (valeurs[i][0]==primes[1][0]){valeurs[i][1]+=primes[1][1]}
    if (valeurs[i][0]==primes[2][0]){valeurs[i][1]+=primes[2][1]}
  }
  f.getRange('A3:B18').setValues(valeurs)
}

"Oui pas de soucis je ne peux rajouter de colonne entre la colonne B et C"

moi non plus je ne comprends pas trop où est le problème d'une colonne masquée ????

ensuite ça va être la manipulation du script !!!!!!

Rechercher des sujets similaires à "ajouter valeur haute"