Google feuille de calcul arrondi à l'inférieur à 0,5, mais ronde, au-dessus de que

La régulière "ROND" de la fonction arrondit vers le bas quand < 0,5 et terminera lors de l' >= 0.5

J'ai besoin de 0,5 à être arrondie vers le bas, mais tout ce qui précède que pour être arrondi.

Afin de:

10.4 devrait être de 10

10.5 doit être de 10

10.6 devrait être de 11

Edit: Voici la solution je suis venu avec

Si la valeur à arrondir est en B1

Et la précision décimale est en A1 (0 = pas de décimales, 1 = une décimale après la virgule, etc.)

=IF(MOD(ABS(B1),(1/(10^A1)))<=0.5*(1/(10^A1)),ROUNDDOWN(B1,A1),ROUNDUP(B1,A1))

La ABS() fait en sorte qu'il fonctionne avec des nombres négatifs.

Le (1/(10^A1)) fait en sorte que ma précision (qui est le deuxième argument de Google fonctions d'arrondi) des échelles de ma condition à la limite (0.5) en conséquence.

Et le MOD() est ce qui détermine en fait ma condition à la limite.

Edit2:

Solution plus élégante grâce à @Jayen

=ROUNDUP(B1 - sign(B1) * (10 ^ -A1) /2, A1)

  • le " plus élégante solution par Jayen a un bug. essayez avec .2 et vous obtenez 1 au lieu de 0! Aussi -.2 yeilds -1 au lieu de 0 trop. Zéro yeilds 0. Mais n'importe quel nombre entre 0 et 5 des rendements de 1 au lieu de 0. Les gens ont vraiment besoin de tester des choses plus à fond.
InformationsquelleAutor Slav | 2013-05-23