Microsoft 365 Arrondi.sup et millisecondes

Matt51140

XLDnaute Nouveau
Bonjour à tous,

Je vous soumet mon interrogation :
J'ai cette formule : =SI(NB(C31;C35)=2;ARRONDI.SUP((C31+C35)*86400;2)/86400;"")
C31, C35 et C36 (cellule contenant la formule dans ma feuille) sont au format "hh:mm:ss,00". La personne à l'origine de cette formule me dit que cette formule est faite pour arrondir la somme à la dizaine de milliseconde supérieure.

On me demande de vérifier manuellement le calcul (bon avec une calculatrice et je vous passe le contexte dans lequel c'est fait).

Le calcul manuel est possible dans ce format mais fastidieux. Mon idée première est de convertir le tout au format numérique avec 10 chiffres après la virgule et de vérifier le calcul dans ce format. Mon raisonnement est que si dans le format numérique calul manuel et résultat de la formule sont identiques, ils le seront, quelques soient les valeurs de C31 et C35, identiques dans le format "hh:mm:ss,00".

Ai-je bon ?

J'ajoute que C35 ne peut prendre uniquement les valeurs de 00:00:01,17 et de 00:00:00,17.
Quand à C31, il s'agit de l'écart constaté entre un chronomètre déclenché puis arrêté lorsque sur le site de l'horloge parlante 30 min se sont écoulés.

Merci d'avance.
 

TooFatBoy

XLDnaute Barbatruc
Bonjour,

Tout d'abord, oui, la formule est exacte, elle arrondie bien "à la dizaine de millisecondes supérieure", c'est-à-dire "au centième de seconde supérieur".


Le calcul manuel est possible dans ce format mais fastidieux. Mon idée première est de convertir le tout au format numérique avec 10 chiffres après la virgule et de vérifier le calcul dans ce format. Mon raisonnement est que si dans le format numérique calul manuel et résultat de la formule sont identiques, ils le seront, quelques soient les valeurs de C31 et C35, identiques dans le format "hh:mm:ss,00".

Ai-je bon ?
Non, tu n'as pas bon. Ou du moins, ça dépend ce que tu veux dire par "convertir au format numérique".
Une heure dans Excel est déjà au format numérique : partie entière = nombre de jours, partie décimale = reste de la journée (heures plus minutes plus secondes, etc.).
Donc afficher 10 chiffres après la virgule ne t'apportera rien. (d'ailleurs, pourquoi 10 chiffres pour voir un millième ??? 3 chiffres suffisent ;-))
En revanche, si tu convertis en secondes et que tu affiches 3 chiffres après la virgule, là oui, tu as bon. ;)


Dans Excel une journée (donc 24 h) vaut 1, donc 1 h vaut 1/24.

Donc pour une heure donnée codée dans Excel, si tu multiplies par 24, la partie entière du résultat te donne le nombre d'heures (et la partie décimale contient le reste, c'est-à-dire les minutes, secondes, etc.).
Si tu multiplies ce résultat par 60, la partie entière du résultat te donne le nombre de minutes (et la partie décimale contient le reste, c'est-à-dire les secondes, etc.).
Si tu multiplies ce résultat par 60, la partie entière du résultat te donne le nombre de secondes (et la partie décimale te donne le reste).

Donc si tu multiplies une heure donnée dans Excel par 24x60x60, tu obtiens la durée en secondes (la partie entière est le nombre de secondes, la partie décimale est le reste).

Moralité : tu multiplies le résultat de ta somme par 24x60x60 et tu affiches le résultat de cette opération au format décimal avec trois chiffres après la virgule pour voir les millièmes de seconde. Comme ça tu vois si les millièmes sont bien arrondis au centième supérieur.


Sinon, plus simple : tu affiches le résultat de ta somme au format mm:ss,000 comme ça tu vois les millièmes de seconde et tu peux voir si ta formule arrondie bien au centième supérieur. ;)
 
Dernière édition:

Discussions similaires

Réponses
9
Affichages
194
Réponses
10
Affichages
518
Réponses
15
Affichages
922

Statistiques des forums

Discussions
314 422
Messages
2 109 447
Membres
110 482
dernier inscrit
ilyxxxh