Condition sur la valeur des décimales d'un nombre
Résolu
SE44fr
Messages postés
32
Date d'inscription
Statut
Membre
Dernière intervention
-
SE44fr Messages postés 32 Date d'inscription Statut Membre Dernière intervention -
SE44fr Messages postés 32 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Je créé une application avec Excel 2010, et pour une de mes formules j'aurai besoin que le logiciel exécute une opération (une division) en fonction de la valeur des décimales d'un nombre (que je note ici "n" et qui correspond à la cellule D84 de ma feuille) et ("a une décimale" qui serai à remplacé par une fonction)
Voici un aperçu de la formule que j'aimerai réussir à écrire :
=Si(D84="a une décimale"<n.25;C84*n+C84/4;Si(D84="a une décimale"?n.33;?n.25;C84*n+C84/3;Si(D84="a une décimale"?n.50;?n.33;C84*n+(C84/2);Si(D84="a une décimale">n.50;ARRONDI.SUP(D84*C84);"No data"))))
Je ne sais pas si cela est possible, en attendant je vous remercie d'avance de m'avoir lu.
Cordialement,
Je créé une application avec Excel 2010, et pour une de mes formules j'aurai besoin que le logiciel exécute une opération (une division) en fonction de la valeur des décimales d'un nombre (que je note ici "n" et qui correspond à la cellule D84 de ma feuille) et ("a une décimale" qui serai à remplacé par une fonction)
Voici un aperçu de la formule que j'aimerai réussir à écrire :
=Si(D84="a une décimale"<n.25;C84*n+C84/4;Si(D84="a une décimale"?n.33;?n.25;C84*n+C84/3;Si(D84="a une décimale"?n.50;?n.33;C84*n+(C84/2);Si(D84="a une décimale">n.50;ARRONDI.SUP(D84*C84);"No data"))))
Je ne sais pas si cela est possible, en attendant je vous remercie d'avance de m'avoir lu.
Cordialement,
A voir également:
- Condition sur la valeur des décimales d'un nombre
- Excel cellule couleur si condition texte - Guide
- Nombre de jours entre deux dates excel - Guide
- Nombre facile - Télécharger - Outils professionnels
- Logiciel gratuit calcul valeur nutritionnelle - Télécharger - Santé & Bien-être
- Ascii nombre de caractères - Guide
2 réponses
Bonjour eric,
Alors les ?? c'est une erreur avec un copié coller tout simplement.
Merci pour ce renseignement, je me suis renseigné sur cette fonction, elle semble permettre d'obtenir le reste d'une division entière, mais dans ce cas ci ce n'est pas ce que je recherche.
Il est vrai que mon énoncé était un petit peu brouillon...
En fait la cellule G84 représente la longueur d'une clôture.
Je divise cette longueur par la longueur d'un panneau : 1.835 mètre
J'obtiens alors le nombre de panneaux dans une autre cellule, la D84.
Or le nombre de panneaux obtenu est rarement un entier...
Donc lorsque j'obtiens le nombre : 8.66 en D84
Alors cela me donne 8 panneaux et 2/3 d'un 9ème panneau
Dans ce cas ci j'arrondis a 9 panneaux.
Mais si j'obtiens le nombre : 8.50 en D84
Alors cela me donne 8 panneaux et 1/2 d'un 9ème panneau
=>L'astuce c'est que les éléments composant les panneaux sont des lames en alu, donc lorsque le nombre en D84 a une décimale <= à 0.50, je peux recouper les lames en 2 sur le 9ème panneau (et seulement le 9ème !) et donc économiser 1 élément.
Même principe lorsque la décimale devient <= 0.33
Alors je peux recouper les éléments du dernier panneau en 3 (et donc en économiser 2)
Même principe lorsque la décimale devient <= 0.25
Alors je peux recouper les éléments du dernier panneau en 4 (et donc en économiser 3)
J'espers avoir été assez précis et compréhensible, dans l'attente d'une solution je reste à votre disposition pour tout renseignements...
Cordialement,
SE.
Alors les ?? c'est une erreur avec un copié coller tout simplement.
Merci pour ce renseignement, je me suis renseigné sur cette fonction, elle semble permettre d'obtenir le reste d'une division entière, mais dans ce cas ci ce n'est pas ce que je recherche.
Il est vrai que mon énoncé était un petit peu brouillon...
En fait la cellule G84 représente la longueur d'une clôture.
Je divise cette longueur par la longueur d'un panneau : 1.835 mètre
J'obtiens alors le nombre de panneaux dans une autre cellule, la D84.
Or le nombre de panneaux obtenu est rarement un entier...
Donc lorsque j'obtiens le nombre : 8.66 en D84
Alors cela me donne 8 panneaux et 2/3 d'un 9ème panneau
Dans ce cas ci j'arrondis a 9 panneaux.
Mais si j'obtiens le nombre : 8.50 en D84
Alors cela me donne 8 panneaux et 1/2 d'un 9ème panneau
=>L'astuce c'est que les éléments composant les panneaux sont des lames en alu, donc lorsque le nombre en D84 a une décimale <= à 0.50, je peux recouper les lames en 2 sur le 9ème panneau (et seulement le 9ème !) et donc économiser 1 élément.
Même principe lorsque la décimale devient <= 0.33
Alors je peux recouper les éléments du dernier panneau en 3 (et donc en économiser 2)
Même principe lorsque la décimale devient <= 0.25
Alors je peux recouper les éléments du dernier panneau en 4 (et donc en économiser 3)
J'espers avoir été assez précis et compréhensible, dans l'attente d'une solution je reste à votre disposition pour tout renseignements...
Cordialement,
SE.
Alors j'ai effectuer d'autres recherches, je n'avais pas écris correctement la formule, mais tu as raison :
=MOD(D84;1)
et
=D84-ENT(D84)
permettent de sortir la décimale, il a fallut faire un peu d'écriture, cela donne :
=SI(MOD(D86;1)<=0,25;ARRONDI.SUP(C86*ARRONDI.INF(D86;0)+(C86/4);0);SI(ET(MOD(D86;1)<=0,33;MOD(D86;1)>0,25);ARRONDI.SUP(C86*ARRONDI.INF(D86;0)+(C86/3);0);SI(ET(MOD(D86;1)<=0,5;MOD(D86;1)>0,33);ARRONDI.SUP(C86*ARRONDI.INF(D86;0)+(C86/2);0);SI(MOD(D86;1)>0,5;C86*ARRONDI.SUP(D86;0);"No data"))))
Et le calcul fonctionne à merveille !
Merci beaucoup Eric !
Au plaisir,
Cordialement,
SE.
=MOD(D84;1)
et
=D84-ENT(D84)
permettent de sortir la décimale, il a fallut faire un peu d'écriture, cela donne :
=SI(MOD(D86;1)<=0,25;ARRONDI.SUP(C86*ARRONDI.INF(D86;0)+(C86/4);0);SI(ET(MOD(D86;1)<=0,33;MOD(D86;1)>0,25);ARRONDI.SUP(C86*ARRONDI.INF(D86;0)+(C86/3);0);SI(ET(MOD(D86;1)<=0,5;MOD(D86;1)>0,33);ARRONDI.SUP(C86*ARRONDI.INF(D86;0)+(C86/2);0);SI(MOD(D86;1)>0,5;C86*ARRONDI.SUP(D86;0);"No data"))))
Et le calcul fonctionne à merveille !
Merci beaucoup Eric !
Au plaisir,
Cordialement,
SE.