Valeurs variantes autour d'un total fixe

gwarps -  
eriiic Messages postés 24603 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,

J'ai un petit problème sur excel que vous résoudrez sans doute sans difficulté.
J'ai plusieurs cellules qui valent chacune un certain pourcentage (A1=50%,B1=25%...).
Le total de ces cellules vaut 100%.

Je voudrais qu'en faisant varier me première cellule à la main le total reste de 100% et que les autres cellules s'adaptent.

ex: si j'ai A1=50%% B1=25% C1=25% je veux faire varier A1=40%, alors B1 et C1 augmentent automatiquement à 30% pour conserver le total de 100%.

Si vous savez comment faire varier les cellules de manières proportionnelles ce serait parfait.
ex: si je fais baisser A1 de 10%. Alors j'ai 10% à répartir sur B1 et C1, avec C1=10% et B1=70% alors on obtient B1=78,5% et C1=11,5%.

Si vous avez besoin de précisions n'hésitez pas, j'ai tendance à être confus.

Je vous remercie,
A voir également:

6 réponses

m@rina Messages postés 23929 Date d'inscription   Statut Contributeur Dernière intervention   11 465
 
Bonjour,

Il faut que tu utilises le Solveur.
Ainsi l'objectif sera ta cellule Total, la valeur de cet objectif sera de 1 (ou 100%), et les cellules variables seront toutes les cellules que tu additionnes hormis celle que tu modfiies manuellement.

Tu peux même ajouter des contraintes (montants minimum ou maxi, ou <> 0, etc.)

L'emplacement de la fonction Solveur dépend de ta version d'Excel.

m@rina
0
eriiic Messages postés 24603 Date d'inscription   Statut Contributeur Dernière intervention   7 276
 
Bonjour,

Ou bien accepter d'utiliser plusieurs cellules (sinon accepter les références circulaires, faisable mais t'embêtera sur le reste du tableau) :
https://www.cjoint.com/?BFnteKe1sec

Ou 3ème choix : macro

eric
0
gwarps
 
Excuse-moi de ne pas t'avoir répondu mais il semblerait que ton lien soit vide, une seule cellule contient du texte en A1 feuille1 avec inscrit "toto" à l'intérieur. Pour la macro je ne suis pas aseez expérimenté pour en créer une. Sinon même avec les références circulaires je ne vois pas très bien comment le faire vu que je veux faire varier toutes les cellules sauf une. Ce qui implique pas mal d'imbrications et malgré pas mal de tentatives je n'arrive pas au résultat. Peut-être as-tu une piste à me proposer par exemple si je te donne l'exemple suivant:

A1=100% (fixe) B1=20% C1=50% D1=30%

Je te remercie,
0
m@rina Messages postés 23929 Date d'inscription   Statut Contributeur Dernière intervention   11 465
 
Euh... pourquoi ne veux tu pas utiliser le solver qui est fait pour ça ? En dehors du plaisir de se compliquer la vie ??
0
gwarps
 
J'ai réussi à fixer mon total le problème est que le solveur n'est pas maniable et j'ai l'impression qu'il fait le relancer à chaque fois. Je m'expique:

Je fixe A1 à 20 B1=10 C1=5 D1=5. Je veux que B1=15 je fixe donc une contrainte B1=15 le solveur me le permet. Je l'exécute et tout se passe pour le mieux. Le problème est que si je veux recommencer il faut que je relance le solveur et que je fixe une nouvelle contrainte. En gros j'aimerais configurer mon solveur une seule fois et après je n'y touche plus et que quelque soit la cellule que je modifie il s'addapte à la situation.
0
eriiic Messages postés 24603 Date d'inscription   Statut Contributeur Dernière intervention   7 276
 
Bonjour,

effectivement il y a eu un pb sur le fichier...
Je le remet pour info mais il est conforme à ta 1ère demande : on modifie A1
http://cjoint.com/12jn/BFnteKe1sec_classeur1.xls

eric
0
gwarps
 
Désolé Eric ton fichier ne fonctionne toujours pas et si je n'ai pas était assez précis lors de ma première demande B1 et C1 sont aussi modifiables seul D1 reste à 100%. Les trois autres cases peuvent être modifées.
0
ducdosteflem
 
Bonsoir,

en 3eme couche, une question de perplexité perso :
quelle répartition sur les autres ? 50/50 ou au prorata de leur valeur respective ?

ou par affinité ?

Cordialement
0
gwarps
 
Merci pour vos réponses.


Pour Marina,

En revanche le problème avec le solveur est quu'une fois ma valeur totale fixée (100%) je ne peux plus faire varier les autres valeurs modifiables sans affecter mon total.

Par exemple si je mets A1=100% B1=50% C1=50%, je fixe A1 et je rends modifiable B1 et C1, alors si j'augmente B1 de 10% soit B1=60% alors ce n'est pas C1 qui passe à 40% mais A1 qui monte a 110%.

Pour Duc,

La répartition que je souhaite est au prorata
0
eriiic Messages postés 24603 Date d'inscription   Statut Contributeur Dernière intervention   7 276
 
Bonjour à toi aussi gwarps,

et pour eric post 2 ????

alors si j'augmente B1...
Dans ta demande tu ne parlais que de faire varier A1...
eric
0
gwarps
 
J'ai réussi à fixer mon total le problème est que le solveur n'est pas maniable et j'ai l'impression qu'il fait le relancer à chaque fois. Je m'expique:

Je fixe A1 à 20 B1=10 C1=5 D1=5. Je veux que B1=15 je fixe donc une contrainte B1=15 le solveur me le permet. Je l'exécute et tout se passe pour le mieux. Le problème est que si je veux recommencer il faut que je relance le solveur et que je fixe une nouvelle contrainte. En gros j'aimerais configurer mon solveur une seule fois et après je n'y touche plus et que quelque soit la cellule que je modifie il s'addapte à la situation.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
ducdosteflem
 
bonjour,

je propose une ébauche de principe
au prorata des valeurs de base, car il faut bien une base de départ :

http://cjoint.com/?3ForUpWkWQl

Cordialement
0
Raymond PENTIER Messages postés 58992 Date d'inscription   Statut Contributeur Dernière intervention   17 358
 
Bonjour gwarps.

Ce qui me semble le plus confus, c'est que tu crois pouvoir saisir en B1 à la fois la valeur 25% et la formule qui permettra d'afficher 30% quand, en A1, tu auras remplacé 50% par 40% !

Si tu veux te passer de solveur et de macro, il faut en ligne 1 tes valeurs de départ, et en ligne 2 tes formules pour le calcul et l'affichage des nouvelles valeurs.

Ainsi en D1 tu mets la formule =SOMME(A1:C1) à recopier en D2.
En B2 tu mets la formule =(D1-A2)*B1/(B1+C1)
En C2 tu mets la formule =(D1-A2)*C1/(B1+C1).
* Quand tu saisiras 40% en A1, 30% en B1 et 30% en C1, puis 10% en A2,
tu obtiendras 45% en B2 et en C2.
* Quand tu saisiras 20% en A1, 10% en B1 et 70% en C1, puis 10% en A2,
tu obtiendras 11% en B2 et 79% en C2.
-1