Probleme avec la fonction ENT()

Pourtantjessaie

XLDnaute Nouveau
Resolu Probleme avec la fonction ENT()

Bonjour à tous,
Le titre est clair, j'espère le rester !!
Sur excel 2007, j'ai 1 classeur par "personnes". Dans chaque classeur j'ai une feuille "recap" et 1 feuille pour chaque mois de l'année. Pour chaque feuilles j'ai une "foultitudes" de renseignements dont un cumul d'heures qui évolue d'un mois sur l'autre. Le problème est là...
Pour chaque mois seul les heures pleines peuvent être prises en compte et je souhaite reporter sur le mois d'après la partie "décimale" de l'heure (qui est exprimée en base 10 pour simplifier les choses). Par exemple :
J'ai sur Juin en E33 --> SOMME(Juin!S4:S28) (renvoie 3) j'ai donc mis sur juillet en E33 --> =SOMME((Juin!E33-ENT(Juin!E33));SOMME(Juillet!S4:S28)) (pour info SOMME(Juillet!S4:S28) est égal 0 pour l'instant) cela me renvoie 1 :confused: au lieu de 3 il me semble. Après "réduction" des formules pour comprendre, je trouve : ENT(Juin!E33) renvoie 2 :confused: alors que ENT(3) renvoie bien 3 !! et si je me débrouille à renvoyer 3.5 en E33 sur juin et bien ENT(Juin!E33) renvoie bien 3 !! J'y comprends plus rien...Si quelqu'un a un bout d'explication...Merci d'avance.
Cyril
 
Dernière édition:

Monique

Nous a quitté
Repose en paix
Re : Probleme avec la fonction ENT()

Bonjour,

Tu as peut-être 2,9999999999988 ou quelque chose comme ça en E33
Pour vérifier, tu tapes
=Juin!E33=3

Si =Juin!E33=3 te renvoie FAUX,
en E33, tu mets =ARRONDI(SOMME(Juin!S4:S28);4)

Si =Juin!E33=3 te renvoie VRAI,
tu postes un bout de fichier

Sinon, pour avoir la partie décimale du nombre qui est en E33
=MOD(Juin!E33;1)
 

Pourtantjessaie

XLDnaute Nouveau
Re : Probleme avec la fonction ENT()

Un super grand merci à tous pour vos réponses....:D
L'envoi de fichier ne sera pas nécessaire ,la manip de Monique fonctionne.
Le retour était bien FAUX pour =Juin!E33=3, l'ARRONDI règle le problème.
Pour info les fonctions MOD ainsi que TRONQUE retournée "1" et pas "0", surement le même problème car cela fonctionne après l'utilisation de l'ARRONDI.
Promis Brigitte, je serai plus claire la prochaine fois :)
 

Monique

Nous a quitté
Repose en paix
Re : Probleme avec la fonction ENT()

Bonjour,

"Pour info les fonctions MOD ainsi que TRONQUE retournée "1" et pas "0"

On ne peut pas comparer Mod et Tronque
Tu tapes 6,75 en A1
=MOD(A1;1) renvoie 0,75
=TRONQUE(A1) renvoie 6
=ARRONDI(A1;0) renvoie 7
=ARRONDI(A1;2) renvoie 6,75

Pour avoir 0 avec MOD(réf;1), il faut un nombre entier (rien après la virgule)
Pour avoir 0 avec TRONQUE(réf), il faut un nombre supérieur ou égal à 0 et inférieur à 1
 

Pourtantjessaie

XLDnaute Nouveau
Re : Probleme avec la fonction ENT()

Bonjour,

Merci à Monique pour ces nouvelles explications.
J'ai effectivement fait un raccourci. J'aurais dû écrire :
"Pour info les fonctions MOD ainsi que TRONQUE retournes des valeurs fausses" . Surement lié à l'heure :D

=MOD(Juin!E33;1) me renvoyer "1" et TRONQUE(Juin!E33) me renvoyer "2" (au lieu de respectivement "0,XX" et "3" pour 3< résultat en Juin!E33 <4; si j'ai bien tout compris).

Du coup Pourquoi le MOD me renvoyer 1, ça ne devrais pas être un nombre décimal ?? En plus, si MOD + TRONQUE reconstitue le nombre...Ben j'ai bien "3" ?

Merci encore pour les éclaircissements.
 

Monique

Nous a quitté
Repose en paix
Re : Probleme avec la fonction ENT()

Bonjour,

Du coup Pourquoi le MOD me renvoyer 1, ça ne devrais pas être un nombre décimal ??
Si MOD(Juin!E33;1) te renvoie 1, c'est juste une illusion.
C'est que tu as un format de nombre où tu ne vois pas ce qu'il y a après la virgule
=mod(2,9999999999;1) a pour résultat 0,9999999999
et 0,9999999999 ça donne 1 ou 1,00 ou autre si le format de la cellule n'est pas adapté

Si TRONQUE(Juin!E33) te renvoie 2, pareil, c'est une illusion.
C'est que 2 est le seul chiffre avant la virgule mais, après la virgule, tu as des chiffres que tu ne vois pas

En plus, si MOD + TRONQUE reconstitue le nombre...Ben j'ai bien "3" ?
Idem, une illusion.
Tu vois 3 mais c'est 2,????????

TRONQUE(Juin!E33) me renvoyer "2" (…) au lieu de 3
Tronque ne fait que tronquer les valeurs
Si tu as 2,9999999999, tronque(Nb;0) enlève et la virgule et tout ce qu'il y a après
et renvoie 2
Si tu as 2,0000000001, tronque(Nb;0) enlève idem : et la virgule et tout ce qu'il y a après
et renvoie 2 aussi

C'est pour ça que je te disais d'utiliser la fonction Arrondi()
=TRONQUE(ARRONDI(2,9999999999;4)) renvoie 3
=ENT(ARRONDI(2,9999999999;4)) renvoie 3

Tu devrais faire des essais sur des cellules autres que Juin!E33
Tu ne sais pas ce que contient exactement E33, tu es étonné par les résultats
Tu prends une feuille vierge, tu saisis des nombres et tu fais des essais de formules
Autre chose : regarde l'aide d'Excel pour ces fonctions
 

Discussions similaires

Statistiques des forums

Discussions
312 497
Messages
2 088 984
Membres
103 998
dernier inscrit
Gotteland